我的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>
答案 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;
}