gpt4 book ai didi

php - Allow_Remove 不删除集合

转载 作者:行者123 更新时间:2023-12-02 04:37:56 25 4
gpt4 key购买 nike

我在我的表单中设置一个字段集(集合),我希望允许添加和删除元素。所以,我的代码是:

    $hydrator = new Hydrator($this->getObjectManager(), 'Base\Entity\MyElements');

$fieldset = new MyElements();

$fieldset->setObjectManager($this->getObjectManager())
->setHydrator($hydrator)
->setObject(new \Base\Entity\MyElements())
->init();

$this->add(array(
'type' => 'Zend\Form\Element\Collection',
'name' => 'myElements',
'options' => array(
'label' => 'My Elements',
'count' => 1,
'should_create_template' => true,
'allow_add' => true,
'allow_remove' => true,
'target_element' => $fieldset
)
));

我可以添加元素,但是,删除按钮没有出现。我做错了还是忘记了什么?

PS:我的英语很差,但我正在努力提高它。对不起。还有谢谢

最佳答案

allow_remove 选项不会直接添加按钮。请记住,allow_add 也不会添加按钮。正如您在 the docs 中看到的那样你必须添加按钮

<button onclick="return add_category()">Add a new category</button>

和添加元素的js函数:

<script>
function add_category() {
var currentCount = $('form > fieldset > fieldset').length;
var template = $('form > fieldset > span').data('template');
template = template.replace(/__index__/g, currentCount);

$('form > fieldset').append(template);

return false;
}
</script>

正是如此,你必须添加删除按钮

<button onclick="return remove_category()">Remove</button>

和函数:

<script>
function remove_category() {
//write your logic to remove the last, or the current element, for isntance:

$('form > fieldset > fieldset').last().remove();
return false;
}
</script>

关于php - Allow_Remove 不删除集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21533955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com