将一组简单的JSON加载到一组HTML字段中 - 最简单/最乏味的方式?

时间:2011-07-20 19:18:45

标签: jquery asp.net html json

我正在做一个非常简单的软件。我想在jQuery模式对话框中创建一组字段。由于其他一些限制,如果我使用jQuery的AJAX函数与我的服务器进行通信而不是使用ASP.Net的AJAX支持,那将很容易。

但是,我想知道是否有比直接分配所有字段更简单的方法。例如,要保存我必须执行的所有字段:

  1. 对于每个字段,执行json.fieldname=$('#fieldname').val()
  2. 发送json数据。
  3. 我必须这样做才能将数据加载到json的字段中。

    是否有更容易/更乏味的方式?

1 个答案:

答案 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() {