【发布时间】:2016-01-11 20:44:28
【问题描述】:
我正在使用 Symfony 2 PHP 框架和 Twig。我的问题是这样的:
我必须生成可变数量的<select> 元素。然后每个选择显示一堆选项,用户必须从中选择一个。所以我想以某种方式为每个 <select> 元素分配一个 id 属性,这样我就可以为每个元素获取选定的选项。
我一直在环顾四周并尝试不同的东西,但到目前为止没有任何效果。
我的代码如下所示:
<form action="" method="POST" id="selectForm">
{% for i in 1..11 %}
<select class="select" id="select{{ i }}">
<option disabled selected> --Select a player -- </option>
{% for item in items %}
<option>...</option>
{% endfor %}
</select></br>
{% endfor %}
<button class="btn btn-primary" id="updateButton">Update</button>
</form>
如您所见,我最近尝试使用 Twig 变量 i,它迭代 for 循环以设置 id,但它似乎不起作用。
【问题讨论】:
-
您是否考虑过使用 symfony 表单 ..symfony.com/doc/current/book/forms.html 表单组件与 twig 紧密合作,并自动为您生成所有这些 ..
-
您发布的代码正确生成了
<select>元素。您可以在此处查看执行代码的结果:twigfiddle.com/sd3p02 -
如果您尝试将模板中的
player选项映射到玩家实体选择字段,您需要提供一个ID 数组作为该字段的默认数据。请参阅.../vendor/symfony/symfony/UPGRADE-2.3.md,第 173 行转发。 -
感谢您的帮助! Javier 是对的,显然我最后一次使用 twig 循环索引分配 id 的尝试是正确的,我只是看不到它,因为我也没有正确选择元素,我只是没想过检查源代码看看是否正确分配了 id,非常感谢@JavierEguiluz 和其他人的提示!
标签: javascript php jquery html symfony