我有以下javascript代码:
var groupArray = [];
groupArray.push($("#group").val());
var sendInfo = { Id: 0,
Name: $("#disc-name").val(),
Groups: groupArray,
Description: $("#disc-description").val()
};
$.post('/Home/Add', sendInfo, function(msg) { alert(msg.data }, 'json');
控制器:
[HttpPost]
public JsonResult Add(Something parameters) {
return Json( new {
data = _something.AddSomething(parameters)
},
JsonRequestBehavior.AllowGet);
}
和Something
模型是:
public string Name {
get;
set;
}
public List<string> Groups {
get;
set;
}
public int Id {
get;
set;
}
public string Url {
get {
return FriendlyUrl.Slugify( this.Name );
}
}
public string Description {
get;
set;
}
在调试模式下,当我想通过AJAX发送sendInfo
对象时,我看到Groups
为空(在Controller页面中)。
我想知道是否有什么问题,或者是Javascript代码中的其他方法。我不想更改Something
模型结构。
谢谢
答案 0 :(得分:3)
你应该像这样使用JSON.stringify
$.post('/Home/Add', JSON.stringify(sendInfo), function(msg) { alert(msg.data }, 'json');