我的搜索不起作用 . 我使用DynamicForm:
<?php $form = ActiveForm::begin([
'id' => 'dynamic-form',
contract_id - 取决于另一个参数 .
<?= $form->field($modelRequestEvent, 'contract_id')->widget(DepDrop::classname(), [
'type' => DepDrop::TYPE_SELECT2,
'value' => $modelRequestEvent->contract_id,
'data' => $contractList,
在ActiveForm里面有:
<?php DynamicFormWidget::begin([
在DynamicForm中有一个package_id字段,它取决于contract_id:
<?= $form->field($modelPackageRequest, "[{$index}]package_id")->widget(DepDrop::classname(), [
'type' => DepDrop::TYPE_DEFAULT,
'value' => $modelPackageRequest->package_id,
'data' => $packageList,
'language' => 'ru',
'options' => [
'placeholder' => 'Выберите услугу ...',
'allowClear' => true,
],
'pluginOptions' => [
'depends' => ['requesteventform-contract_id'],
'url' => Url::to(['/request-event/get-packet-by-contract']),
'initialize' => false,
]
]);?>
问题是,当ActiveForm已经有一些数据(场景更新)并且定义了$ packageList时,DynamicForm和package_id选择字段运行良好 . 但是当ActiveForm是新的(场景创建)时,您是填写表单的过程,$ contract_id字段被填充,当添加另一个Dynamicform时,package_id不活动 .
我怀疑在添加另一个DynamicForm时,没有重新初始化depdrop小部件 .
也许有人知道问题是什么?或者有人有类似的问题?