Yii2 动态表单中的自定义字段

Custom fields in Yii2 dynamic form

我在 Yii2-advanced-app 中使用 wbraganca 动态表单。我想在哪里使用自定义字段。但是我不明白如何用 onchange 来处理它。因为当我们点击 'add' 按钮时,所有字段的 ID 都在动态变化。

我只想改尊敬的'available qty'就改相应的'SKU'。也就是说,如果选择了 ID 为 sku0 的 sku,那么它的可用数量即应更改 avlqty0(...Sku1--->avlqty1 等等...)。但是我获取不到id,因为它是动态变化的。

这是我的代码 -

<div class="col-lg-2">
    <?= $form->field($model, "[{$i}]SKU")->dropDownList(ArrayHelper::map(CompItems::find()->where(['id' => 0])->all(),'id','SKU'),['prompt' => 'Select SKU',
      'onchange' => '
           $("#avlqty").val(100);']) ?>
</div>
<div class="col-lg-3">
    <div class="form-group" style="margin-bottom: 10px;">
      <label for="avlqty">Available Qty:</label>
      <input type="text" class="form-control" id="avlqty" value="" readonly="true">
    </div>
</div>

将 class 提供给 sku 下拉列表。假设它是 sku_class 并给出像 sku_id (ski_0) 和 avlqty_0

这样的 id
$(document).on('change', '.sku_class', function() {
    ele_id = $(this).attr('id');
    ele_arr = ele_id.split("_");
    id = ele_arr.pop();  // this is your id
})