强制发布复选框数组输入/解决方法

时间:2014-02-24 17:33:15

标签: php jquery html checkbox

对不起的标题感到抱歉..我正在试图解决这个相当简单的问题的解决方法。

HTML

<input type="text" name="test[description][]" / >
<input type="checkbox" name="test[confirm][]" value="1" / >

html可以通过jquery克隆...我遇到的问题是复选框不会发布,除非它被检查(这是我应该知道的事情)。这会弄乱我的PHP以检查复选框索引以查看它是否已被检查..如果您克隆此3次然后保持中间复选框未选中..但检查第一个和最后一个..最后一个复选框在它需要时获得索引2成为3.

感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

我认为你不能像你想要的那样去做。没有办法区分哪些复选框被检查为书面。你可以:

1)对元素名称中的位置进行编码。

2)创建将被发送的隐藏字段,以记录已选中/未选中的值。用以下内容初始化:

<input id="hidden-1" type="hidden" name="test[description][]" value="0" />
<input id="check-1" type="checkbox" />
<script>
   $('#check-1').click(function() {
      var $hidden = $('#hidden-1');
      $hidden.val(hidden.val() == 0 ? 1 : 0);
   }
</script>

如果数字是动态的,你可以封装所有这些以动态生成绑定。