如何在 yii 中使用 ajax 作为下拉菜单
how to use ajax for dropdowm in yii
如何使用 ajax 在 yii 中调用下拉列表..我有 1 个下拉列表和 1 个文本字段..如果用户从下拉列表中选择一个项目,那么文本字段必须自动填充数据库中的数据..可以任何一个帮帮我..
<div class="row">
<?php echo $form->labelEx($model,'Seattype'); ?>
<?php echo $form->dropDownList($model,'seattype',
array('S' => 'Sleeper', 'M' => 'Semi-sleeper','A'=>'Seater'),
array('empty' => '(Select Type)','name'=>'seattype'));?>
<?php echo $form->error($model,'seattype'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'amount'); ?>
<?php echo $form->textField($model,'amount',array('name'=>'amount','id'=>'amount')); ?>
<?php echo $form->error($model,'amount'); ?>
</div>
</div>
<?php echo CHtml::submitButton('Submit',array('name'=>'submit'))?>
试试这个脚本,
<script>
$('#seattype').on('change',function()
{
var selected_val = $(this).val();
$.ajax({
type: 'POST',
url: '<?php echo $this->createUrl('your_controller/your_action');?>',
data: {id: selected_val},
success: function( amt){
$('#amount').val(amt); //set returned amount value from controller
},
error: function(){
alert('failure');
}
});
});
</script>
具有硬编码值的示例控制器操作,
public function actiongetAmount()
{
if($_POST['id'] == 'S')
echo 500;
else if($_POST['id'] == 'M')
echo 1000;
else
echo 100;
}
如何使用 ajax 在 yii 中调用下拉列表..我有 1 个下拉列表和 1 个文本字段..如果用户从下拉列表中选择一个项目,那么文本字段必须自动填充数据库中的数据..可以任何一个帮帮我..
<div class="row">
<?php echo $form->labelEx($model,'Seattype'); ?>
<?php echo $form->dropDownList($model,'seattype',
array('S' => 'Sleeper', 'M' => 'Semi-sleeper','A'=>'Seater'),
array('empty' => '(Select Type)','name'=>'seattype'));?>
<?php echo $form->error($model,'seattype'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'amount'); ?>
<?php echo $form->textField($model,'amount',array('name'=>'amount','id'=>'amount')); ?>
<?php echo $form->error($model,'amount'); ?>
</div>
</div>
<?php echo CHtml::submitButton('Submit',array('name'=>'submit'))?>
试试这个脚本,
<script>
$('#seattype').on('change',function()
{
var selected_val = $(this).val();
$.ajax({
type: 'POST',
url: '<?php echo $this->createUrl('your_controller/your_action');?>',
data: {id: selected_val},
success: function( amt){
$('#amount').val(amt); //set returned amount value from controller
},
error: function(){
alert('failure');
}
});
});
</script>
具有硬编码值的示例控制器操作,
public function actiongetAmount()
{
if($_POST['id'] == 'S')
echo 500;
else if($_POST['id'] == 'M')
echo 1000;
else
echo 100;
}