wbraganca / yii2-dynamicform值在编辑时复制到克隆字段,但不在创建时复制

我在Yii2项目中使用动态表单。 我想复制克隆字段中的值。 我观察到如果我使用编辑它是复制克隆字段上的值,但是当我使用create时不复制。

是这样设计的吗? 我怎么能做到这一点。 我想要复制的值的字段是一个选择字段。

我还观察到在yii2-dynamic-form.js它包含如下代码:

 $template.find('input, textarea, select').each(function() { $(this).val(''); }); 

是这段代码阻止值复制。 但我也试图评论相关代码,但没有成功。

该字段的相关html是这样的:

 
field($modelCustomBreakTime, "[{$i}]days")->dropDownList($days,['prompt'=>'select']) ?>

根据Muhammad Omer Aslam的评论中的链接建议代码

 <?php $script= <<registerJs($script); ?> 

您可以像下面一样绑定afterInsert事件

 $('.dynamicform_wrapper').on('afterInsert', function (e, item) { //code to copy values from the desired row/field set }); 

dynamicform_wrapperwidgetContainer小部件属性的值。并使用包含当前插入的面板/行的引用的item

因此,您需要将代码更改为以下内容,我无法通过运行来测试它,但希望它应该可以正常工作。

我假设您的字段名称是days ,并且生成的name属性将类似于CustomBreakTime[]['days']在必要时在下面的脚本中更改模型名称或属性名称

 getShortName(); $script=<<registerJs($script, \yii\web\View::POS_READY); ?>