Javascript 将ID分配给动态生成的HTML标记
我使用的是symfony2php框架和Twig。我的问题是: 我必须生成数量可变的元素。然后,每个选择显示一组选项,用户必须从中选择一个。因此,我想以某种方式为这些元素中的每一个指定一个id属性,这样我就可以为它们中的每一个获得所选的选项 我一直在四处寻找,尝试不同的东西,但到目前为止没有任何效果 我的代码如下所示:Javascript 将ID分配给动态生成的HTML标记,javascript,php,jquery,html,symfony,Javascript,Php,Jquery,Html,Symfony,我使用的是symfony2php框架和Twig。我的问题是: 我必须生成数量可变的元素。然后,每个选择显示一组选项,用户必须从中选择一个。因此,我想以某种方式为这些元素中的每一个指定一个id属性,这样我就可以为它们中的每一个获得所选的选项 我一直在四处寻找,尝试不同的东西,但到目前为止没有任何效果 我的代码如下所示: <form action="" method="POST" id="selectForm"> {% for i in 1..11 %} <
<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,但似乎不起作用。您应该将变量与字符串连接起来,而不是打印它
<form action="" method="POST" id="selectForm">
{% for i in 1..11 %}
{% set sid = "select"~i %}
<select class="select" id=sid>
<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>
你有没有考虑过使用symfony表格。。表单组件与twig密切合作,并自动生成所有这些元素。您发布的代码正确生成元素。您可以在这里看到执行代码的结果:如果您试图将模板中的播放器选项映射到播放器实体选择字段,则需要向该字段提供一个id数组作为默认数据。请参阅…/vendor/symfony/symfony/UPGRADE-2.3.md,第173行转发。感谢您的帮助!Javier是对的,显然我最后一次尝试使用twig循环索引分配id时工作正常,我看不到它,因为我也没有正确选择元素,我只是没有考虑检查源代码以查看id是否被正确分配,非常感谢@JavierEguiluz和其他人的提示!!是的,你能做到。但是没有必要这样做。关于id属性,细枝代码按预期工作。见twigfiddle.com/sd3p02