所以我刚遇到一个奇怪的情况,复选框只是在强调我。我正在尝试建立一个“里程碑”功能,如下所示:
[浏览状态] [1] | [编辑状态] [2] [1]:https://i.stack.imgur.com/f0XV4.png [2]:https://i.stack.imgur.com/SLFQU.png
我在这里使用ms[]
所以我可以使用PHP POST拉出后端的所有项目。
<input type="text" class="form-control" name="ms[]" value="<?=$value["content"]?>">
问题在于,当我使用$_POST['ms[]']
获取这些复选框时,它实际上只给了我一个仅包含已检查项目的数组。然后我真的不知道哪些用户没有检查。
我在这里阅读了一些流行的解决方案,所有这些解决方案似乎都要求输入的名称属性不同。但由于“里程碑”是可删除的和可添加的,我不能给它一个唯一的名称。
我还提出了一些其他可能的解决方案,例如将所有这些复选框隐藏为文本框。每次用户选中或取消选中复选框时,相应的文本框都会设置为“1”或“0”。但这需要我改进整个事情。
我只是想知道是否有任何简单可靠的方法来获取复选框的完整列表,无论它们是否被选中?
提前感谢您的帮助。
答案 0 :(得分:0)
对于每个复选框,请单击。
$(document).ready(function(){
$('input[type=checkbox]').each(function(){
//register for each checbox a click event
$(this).on('click', function(){
//check if this checbox is checked or not
if($(this).is(':checked') == false)
{
//your logic
}
});
});
});
或者在提交给服务器之前,
$(document).ready(function(){
$('input[type=checkbox]').each(function(){
//check if this checbox is checked or not
if($(this).is(':checked') == false)
{
//your logic
}
});
});