通过Yii2中的JavaScript更改值

时间:2018-10-10 07:54:08

标签: javascript yii2

我的yii2应用程序中有两个字段(字段a和字段b)。当我更改字段a的值(它的下拉列表)时,我想自动更改字段b的值。例如,如果我将字段a的值更改为“ 12”,则字段b的值应变为“ 13”。

<script>
var textbox2 = document.getElementById("model_fielda");
    textbox2.onchange = function(){
    value = document.getElementById("model_fielda").value;          
    if(value ==  12){
     document.getElementById("model_fieldb").value == 13;
    }
 };
</script>       

2 个答案:

答案 0 :(得分:0)

我有解决方案!代替document.getElementById(“ model_fieldb”)。value == 13; 我只需要设置一个“ =”:

 document.getElementById("model_fieldb").value = 13;

答案 1 :(得分:0)

尝试一下: 在视图中:

<?= Html::dropDownList("A",null,ArrayHelper::map(A::find()->asArray()->all(), 'id', 'name'),[
  "class"=>"form form-control",
  "prompt"=>Yii::t('template', 'Select anything ...'),
  'onchange'=>'
      $.get("route/to/action/A?param='.'"+$(this).val(),function(data){
          $("select#idOfBSelct").html(data);
      });'
]);?>


<?= Html::dropDownList("B",null,[],[
  "class"=>"form form-control",
  "id"=>"idOfBSelct",
  "prompt"=>Yii::t('template', 'Select anything ...'),
]);?>

在控制器中

public function actionA()
{
    $dataFromAjax = Yii::$app->request->getQury('param');

    // do something with $dataFromAjax what you want
    return $anyResult;
}