我试图用jQuery Ajax发布一些数据,但我的Ajax方法中的参数为null.
这是发送数据的简单测试:
var dataPost = { titel: 'titel',message: 'msg',tagIds: 'hello' }; jQuery.ajax({ type: "POST",url: "Create",contentType: 'application/json; charset=utf-8',data: $.toJSON(dataPost),dataType: "json",success: function(result) { alert("Data Returned: "); } });
我的Ajax方法如下所示:
[HttpPost] public ActionResult Create(string title,string message,string tagIds) {... }
我发送的数据存在一些基本错误,但我无法弄清楚是什么.标题,消息和tagIds一直都是null,所以编码有问题,我只是不知道是什么.
最佳参数tagIds应该是一个数组或guid列表.
注意:jQuery.toJSON是这个plugin
解决方法
Create controller操作不期望参数是JSON序列化的,因此您不必这样做.尝试直接传递它们:
var dataPost = { titel: 'titel',tagIds: 'hello' }; jQuery.ajax({ type: "POST",data: dataPost,success: function(result) { alert("Data Returned: "); } });