Symfony Forms EntityType 使用 JS 全选
Posted
技术标签:
【中文标题】Symfony Forms EntityType 使用 JS 全选【英文标题】:Symfony Forms EntityType Select All using JS 【发布时间】:2021-08-09 18:45:11 【问题描述】:在我的网页上,我正在使用带有 EntityType 类的 Symfony 表单。我想创建一个额外的按钮,单击时从该下拉列表中选择所有项目。这可能使用 javascript / JQuery 吗?简单地更改自动生成的 html 是行不通的。
FormType.php:
->add('item', EntityType::class, [
'class' => Item::class,
'choice_label' => function(Item $item)
return sprintf('%s', $item->getName());
,
'label' => 'Staff',
'multiple' => true,
【问题讨论】:
【参考方案1】:我认为这样的事情可以解决问题:
<!-- Somewhere in your Twig file : -->
<button id="check-all-options">Check all !</button>
document.querySelector('#check-all-options').addEventListener('click', () =>
// Select all the options of your <select> tag
const options = document.querySelectorAll('#form_item option');
// Loop on all the options and pass them to selected ✅
options.forEach(option => option.selected = true);
);
如果有帮助请告诉我:)
【讨论】:
以上是关于Symfony Forms EntityType 使用 JS 全选的主要内容,如果未能解决你的问题,请参考以下文章
Symfony - 使用重复的 EntityType 优化表单
预填充 EntityType 类型的 Symfony 表单的字段
Symfony 表单 - EntityType 通过实体 ID 选择选项