将数组中的单个复选框值发送到服务器
Send single CheckBox value in array to server
我在表单上有多个复选框,我要提交表单。
$.fn.serializeObject = function () {
'use strict';
debugger;
var result = {};
var extend = function (i, element) {
var node = result[element.name];
// If node with same name exists already, need to convert it to an array as it
// is a multi-value field (i.e., checkboxes)
if ('undefined' !== typeof node && node !== null) {
if ($.isArray(node)) {
node.push(element.value);
} else {
result[element.name] = [node, element.value];
}
} else {
result[element.name] = element.value;
}
};
$.each(this.serializeArray(), extend);
return result;
};
和代码类似于
var that = $(this);
var temp = $(JSON.stringify());
form_data = that.serializeObject(temp);
form_data = JSON.stringify(form_data);
一切都很好,但如果我选中一个复选框,那么值就像"checkboxName":"value1"
如果我选择checkboc的多个值,那么这个值就像"checkboxName":["value1","value2","value3"]
我希望单个值也应该以数组格式选择,即"checkboxName":["value1"]
如果您尝试:
$.fn.serializeObject = function () {
'use strict';
debugger;
var result = {};
var extend = function (i, element) {
var node = result[element.name];
// If node with same name exists already, need to convert it to an array as it
// is a multi-value field (i.e., checkboxes)
if ('undefined' !== typeof node && node !== null) {
if ($.isArray(node)) {
node.push(element.value);
} else {
result[element.name] = [node, element.value];
}
} else {
//Here you are the checkbox condition
if(element.tagName == "INPUT" && element.getAttribute("type") == "checkbox") {
result [element.name] = [element.value];
} else {
result[element.name] = element.value;
}
}
};
$.each(this.serializeArray(), extend);
return result;
};
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- 正在验证8个真/假复选框或复选框中的2个
- 为复选框javascript指定两个值
- 如何在单击复选框后调用控制器方法
- 从复选框和Selects-KnockoutJS中获取值的总和
- 在服务器上创建一个复选框,使用 javascript 处理函数
- C#/ASP-web,ASP:在客户端执行复选框消息框,如果是,则运行服务器端代码
- 为什么我能够在活动站点上“选中”“禁用”复选框,并且数据已成功上传到服务器
- 如何使用 Web 表单(不是 MVC 或 asmx 页面)从 ajax Http POST 获取 c# 服务器端的复选框
- 使用JS添加复选框,并在服务器端代码(ASP.NET)中找到它
- 如何在asp.net服务器端通过一个指定的名称获取所有复选框值
- Spring表单标记复选框(form:checkbox)隐藏字段未发送到服务器
- JQuery试图打印选中复选框的表的列,然后打印来自web服务器的响应
- 根据服务器响应设置复选框
- 为服务器端复选框触发Javascript
- 动态填充复选框,并在勾选函数调用服务器端
- 获取ASP服务器端所选复选框值的数组
- jQuery在asp.net web表单中隐藏的html服务器控件复选框
- 将数组中的单个复选框值发送到服务器
- 如何在客户端获得服务器端html复选框的值