嘿开发人员我建立一个应用程序窗体,用户在不同的领域输入数据。该应用程序的一部分是来自https://github.com/wbraganca/yii2-dynamicform的动态表单。现在在动态表单中,我有一个依赖下拉菜单,但是当我单击[+]时,依赖下拉菜单更改第一行上的数据,而不是第二行。动态窗体与依赖下拉
这里是我的代码。
在我的控制器
public function actionLists($name)
{
$countHs= Hs::find()
->where(['hscode'=> $name])
->count();
$Hs = Hs::find()
->where(['hscode'=> $name])
->all();
if($countHs > 0)
{
foreach ($Hs as $H)
{
echo "<option value='".$H->hsproduct."'> ".$H->hsproduct."</option>";
}
}else{
echo "<option> - </option>";
}
}
和我的形式
<div class="col-sm-6" style="width: 135px">
<?= $form->field($modelsItems, "[{$i}]hscode")->dropDownList(
ArrayHelper::map(Hs::find()->all(),'hscode','hsproduct'),
[
'prompt'=>'',
'onchange'=>
'$.get("'.Url::toRoute('/hs/lists').'", { name: $(this).val() })
.done(function(data) { $("#'.Html::getInputId($modelsItems, "[{$i}]hsproduct").'").html(data); });'
])->label('HS.Code');
?>
</div>
<div class="col-sm-6" style="width: 135px">
<?= $form->field($modelsItems, "[{$i}]hsproduct")->dropDownList(
ArrayHelper::map(Hs::find()->all(),'hsproduct','hsproduct'),
[
'prompt'=>'',
])->label('HS.Product');
?>
</div>
林更新了你的情况下,我的英语
也许你可以显示它的样子的截图?也许这会更容易理解。不知道我是否可以回答这个问题。 –
这是屏幕截图的链接。 http://imgur.com/a/nCISa – user5469526
第一行如何工作?用你的JavaScript?实际上,我可以编写一个JavaScript函数/事件来帮助您获取特定字段的值。 –