我正在做一个非常简单的软件。我想在jQuery模式对话框中创建一组字段。由于其他一些限制,如果我使用jQuery的AJAX函数与我的服务器进行通信而不是使用ASP.Net的AJAX支持,那将很容易。
但是,我想知道是否有比直接分配所有字段更简单的方法。例如,要保存我必须执行的所有字段:
json.fieldname=$('#fieldname').val()
我必须这样做才能将数据加载到json的字段中。
是否有更容易/更乏味的方式?
答案 0 :(得分:1)
如果我理解正确...您可以使用simple plugin将表单元素seralize为json。
var jsonData = $.toJSON($('#myForm').serializeObject());
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: url,
data: jsonData,
dataType: "json",
success: function(results) {
alert('Made it!');
},
error: function() {
alert('Fail Whale!');
}
});
};
serialzeObject函数将使用输入名称作为键,将值作为json对象的值。
修改强>
要使用div而不是表单来完成此操作,您可以稍微修改插件。
更改每个循环以使用此
var obj = {};
var a = $(this).is('form') ? this.serializeArray() : $(this).find('input, select, textarea').serializeArray();
$.each(a, function() {