【发布时间】:2014-10-08 16:39:32
【问题描述】:
我有一个动态创建的表单,所以我有一个输入数组!
已解决:<input type="hidden" name="smoker_patient[ID]" value="off" /> 每个具有相同 ID 的复选框的隐藏字段!#
行看起来像:
<tr><td>
[stuff]
<input type="checkbox" name="smoker_patient[1]" class="smoker" id="cbx1" checked="checked"/>
[stuff]
</td></tr>
<tr><td>
[stuff]
<input type="checkbox" name="smoker_patient[2]" class="smoker" id="cbx2"/>
[stuff]
</td></tr>
<tr><td>
[stuff]
<input type="checkbox" name="smoker_patient[3]" class="smoker" id="cbx3" checked="checked"/>
[stuff]
</td></tr>
如你所见,cbx1 和 cbx3 被选中。(只是为了显示错误)但是 jQuery 发送的数组只包含
smoker_patient[0] = 'on'
smoker_patient[1] = 'on'
但应该是……
smoker_patient[0] = 'on'
smoker_patient[1] = 'off'
smoker_patient[2] = 'on'
所以我在 PHP 中得到错误:
注意:未定义的偏移量:2 in newcoexposition.php on line XX
【问题讨论】:
-
这是预期的行为 - 如果未选中复选框,则永远不会发布它们。
-
那我现在能做什么?我需要这个,因为整个表格更大,并且有 3 个动态表格!
-
我什至不完全知道这里发生了什么,但是将答案编辑到问题中并在标题中添加 **[SOLVED]** 并不是这里的做法。
-
如果你想保证一个值被发布为是或否,你最好只使用一对代表 y/n 的单选按钮,而不是试图绕过正常的预期复选框的行为。
标签: javascript php jquery arrays checkbox