Posting array of JSON objects to MVC3 action method via jQuery ajax

标题知道含义但是不知如何精确翻译。献丑翻译:JQuery ajax将JSON对象传递给MVC3控制器。

但是实际功能:

将表单里面所有的标签的值转换为object,将此object传递给MVC3控制器。当然了,这里不单单指这种使用方法,估计这是最常用。一句话:jQuery可将object传递给MVC3控制器作为参数。

MVC Control:

[HttpPost]
public ActionResult Create(NetworkGrain.Models.Action model)
{
}

javascript:

下载插件或者使用下面的代码

jQuery.serializeObject.js 网上下载或者代码如下:

jQuery.fn.serializeObject = function () {
        var arrayData, objectData;
        arrayData = this.serializeArray();
        objectData = {};
        $.each(arrayData, function () {
            var value;
            if (this.value != null) {
                value = this.value;
            } else {
                value = '';
            }
            if (objectData[this.name] != null) {
                if (!objectData[this.name].push) {
                    objectData[this.name] = [objectData[this.name]];
                }
                objectData[this.name].push(value);
            } else {
                objectData[this.name] = value;
            }
        });
        return objectData;
    };

注意,这可能有新版。

调用的代码

var param = $("#form").serializeObject();
 $.ajax({
 url:"/Action/Create",
 global:false,
 cache:false,
 type:"POST",
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(param),
success:function(){
  }
});

大家试试,很好!

你可能感兴趣的:(jquery,json,mvc,function,object,action)