如何提交表单中的所有复选框字段
How to submit all checkbox fields in the form?
我有一张带有复选框列表的表。若复选框处于选中状态,则值设置为0,若未选中,则值为-1。我当前的代码只有在选中复选框时才提交复选框。我想在每次点击保存按钮时提交表单中的所有复选框。有什么办法我能做到吗?这是我的代码:
HTML:
<input type="checkbox" name="user" value="~(user_ID)" class="chkBlock" />
JQuery:
//This code switch value based on if check box is checked or not
$j('.chkBlock').click(function(){
$j(this).val(this.checked ? 0:-1);
});
该代码设置复选框状态基于DB:中的值
$j( document ).ready(function() {
$j('input.chkBlock[value="0"]').prop("checked", true);
$j('input.chkBlock[value="-1"]').prop("checked", false);
$j('input.chkBlock[value=""]').prop("checked", false);
});
我当前的代码只有在选中时才提交值。
var boxes=new Array();
$(".chkBlock").each(
function()
{
if( $(this).prop("checked") )
{
boxes.push( $(this).prop("name")+"[]="+$(this).val() );
}
else
{
boxes.push( $(this).prop("name")+"[]=0" );
}
});
console.log( boxes.join("&") );
我在没有测试的情况下写了上面的内容——我上床睡觉了,但我想我会给你一些思考的食物。
我相信我上面写的代码会循环通过chkBlock类的所有标记,如果检查的属性为true,那么它会附加框的名称、双方括号、等号和框的值。
如果checked不为true,则检查仍然通过,但给定的值为零。
已编辑:[]表示复选框将作为数组发送到服务器。检查控制台日志中的示例数据。
我希望这对你有所帮助。。。或者至少,我希望它不会混淆。
虽然这不是你帖子的确切答案。这个问题以不同的形式多次出现。到目前为止,下面链接中的方法似乎是一个不错的解决方案。
张贴未选中的复选框
相关文章:
- Kendo UI网格复选框列字段未定义
- Rad网格编辑模式通过选中复选框时的java脚本启用禁用所需的字段验证器
- 使用javascript提交表单并从字段/单选框/复选框/文本区域获取数据
- 如何获取字段集元素中复选框的所有ID
- 如何获取多个复选框值并分配给隐藏字段
- j查询检查复选框是否被选中,然后向输入字段添加值
- KO 绑定复选框:从代码更改“选中”属性,不更改可观察字段
- 单击“角度”复选框时更新不相关的字段
- 在克隆复选框字段后,使用jQuery获取(并更改)该字段的名称
- 如何提交表单中的所有复选框字段
- 如何将选中的属性添加到使用jquery具有某些类的复选框字段中
- 如何使用 jquery 在页面加载时检查带有值的输入复选框字段
- 更新现有数据时检索引导模式表单中的复选框字段的值时出现问题
- 尝试检测网格视图的哪一行处于编辑模式,然后在选中复选框字段时调整文本框
- JqGrid复选框字段实现失败
- Ext JS 4复选框字段未显示
- 基于复选框字段对网格视图中的行执行操作
- 在Knockout.js中,如何在映射后根据复选框字段对viewModel项进行排序
- JavaScript if语句没有在复选框字段中注册
- 给一系列克隆复选框字段一个唯一名称的困难- javascript