0
嘗試在symfony1.4表單模板中使用jquery ajax編寫動態依賴選擇代碼。 我寫了代碼,我可以從下拉列表中選擇第一個字段的值,並將其傳遞給我的PHP函數以獲取用於選擇第二個下拉列表值的數據。我可以將返回值傳遞給php函數的ajax函數,但我不能使用此值選擇我的下拉列表值symfony1.4,ajax,依賴選擇的javascript jquery
這裏我給了我的代碼。請給出建議。
代碼:
_form.php這個
<script type="text/javascript">
jQuery(document).ready(function() {
$("#application_program_institution_program_id").change(function(){
var id=$(this).val();
if(id != '') {
$.ajax({
type: "POST",
url: '<?php echo url_for('Application/Program'); ?>'+ '?id=' + id,
cache: false,
success: function(data)
{
alert(data);// its show my returned value
$("#application_campus_campus_id").val(data);// but it does not select the value of dropdown list.
}
});
}
});
});
</script>
Applicationaction類
public function executeProgram(sfWebRequest $request) {
$id = intval($request->getParameter('id'));
$campusList = InstitutionCampus::getCampus($id);
return $this->renderPartial('result', array('campusList' => $campusList));
}
getCampus代碼:
public static function getCampus($id) {
$resultset = Doctrine_Query::create()
->select('ip.id as id, ip.program_code as title, ic.id as ip, ic.campus_name as campusname, icp.institution_campus_id')
->from('InstitutionCampusProgram icp')
->innerJoin('icp.InstitutionProgram ip')
->innerJoin('ip.Institution i')
->innerJoin('icp.InstitutionCampus ic')
->where('ip.all_campus = ?', '0')
->andWhere('i.institution_code = ?', CodeUtil::UttaraUniversity)
->andWhere('icp.institution_program_id =?', $id)
->execute();
foreach ($resultset as $prog){
$result = $prog->ip;
}
return $result;
}
}
_result.php代碼:
<?php echo $campusList; ?>
你應該看看這個解決方案[如何從ajax請求中填充選擇](http://stackoverflow.com/a/1745745/569101)。你只需要適應symfony(沒有困難)。 – j0k
我認爲@Chaity不需要用數據填充
嘗試用console.log() 。有時警報會剎車 – ilSavo