如何在 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;
}