您可以通过点击#newchosen div
中的“+”动态添加选择框<script type="text/javascript">
$("#content").on("click", "#newchosen", function() {
$("#clone_hidden").clone().appendTo($("#cloneoutput"));
});
</script>
这是克隆并添加到#cloneoutput
的div<div style="display: none;">
<div id="clone_hidden">
<table>
<tr>
<td>
<select name="color" id="color" class="chosen-color" data-placeholder="{$choose_color}">
<option value=""></option>
{loop="arr_colors"}
<option value="{$key}">{$value}</option>
{/loop}
</select>
</td>
<td>
<select name="grape" id="grape" class="chosen-grape" data-placeholder="{$choose_grape}">
<option value=""></option>
{loop="arr_grapes"}
<option value="{$key}">{$value}</option>
{/loop}
</select>
</td>
<td>
<select name="quality" id="quality" class="chosen-quality" data-placeholder="{$choose_quality}">
<option value=""></option>
{loop="arr_quality"}
<option value="{$key}">{$value}</option>
{/loop}
</select>
</td>
<td>
<input type="text" name="quantity" id="quantity" value="" maxlength="10" class="smalltextinput" />
</td>
</tr>
</table>
</div>
</div>
所以问题是只有颜色,葡萄和质量的第一个选择框才起作用,因为它只是与重复的名称相同。但是,如果我将[]添加到选择框的id和名称选择得到错误,并且根本不再工作。
所以我的问题是,如何选择数组字段?喜欢
选择name = color [] id = color []
感谢您的关注!祝你有个美好的一天。
答案 0 :(得分:0)
我通过将div clone_hidden id更改为唯一的
来修复此问题<script type="text/javascript">
var count = 0;
$("#content").on("click", "#newchosen", function() {
count++;
$("#clone_hidden").clone().attr('id','clone'+ count +'').appendTo($("#cloneoutput"));
$("#clone" + count +" select").chosen({disable_search: true, width: "150px"});
});
</script>