我想在magento2中实现动态表单字段
用户可根据需要添加尽可能多的图片,就像添加更多选项一样,
我通过在编辑时添加10个新图像来实现此功能,但用户无法在路上添加更多图像
表格之后我写了这个
$newfieldset = $form->addFieldset('new_fieldset', ['legend' => __('New Images #')]);
foreach (range(0, 10) as $newid) {
$newfieldset->addField(
"newimages_$newid",
'image',
['name' => 'galleryimages[]', 'label' => __('New Image #'.$newid), 'title' => __('New Image #'.$newid), 'required' => false , 'disabled' => $isElementDisabled]
);
}
$this->setForm($form);
return parent::_prepareForm();
让我知道这是否可以更加动态,就像单击按钮添加图像在表单中添加新字段
答案 0 :(得分:0)
你必须创建一个js函数来生成你需要的文件,我想你可以使用这个函数在表单中添加一个脚本块:
$this->setChild('form_after',$this->getLayout()->createBlock('Magento\Framework\View\Element\Template')->setTemplate('Vendor_Company::folder/js.phtml'));
您可以创建一个脚本来通过javascript添加动态字段
<script>
require([
"jquery",
"mage/adminhtml/form", // in case you need some of the magento functions
'domReady!',
], function ($) {
//YOUR CODE HERE ...
});
我希望这个解决方案能够解决问题,我不知道这是否正确,但这是有效的