我需要在我的jquery post方法中发布一个复杂的列表。这就是我正在做的事情
function UpdateOrder() {
var results = new Array();
$("#divMainContainer").find(".teamTr").each(function() {
var o = { 'projectid': $(this).attr("projectid"),
'designTeamID': $(this).attr("designTeamID"),
'designTeamOrder': $(this).attr("designTeamOrder")
};
results.push(o);
});
var url = "/DesignManagerQueue/UpdateOrder";
$.post(url, { queryArr: results}, function(data) {
});
MVC Action是
public JsonResult UpdateOrder(List<SS> queryArr)
{
//Do something
return Json(new { Status = true, Message = "" });
}
而班级是
public class SS
{
public string Projectid{ get; set; }
public int DesignTeamID{ get; set; }
public int DesignTeamOrder { get; set; }
}
但是在行动中
List<SS> queryArr
为空
任何想法?
答案 0 :(得分:0)
你的js对象属性应该与你的模型类匹配
public class SS
{
public string Projectid{ get; set; }
public int DesignTeamID{ get; set; }
public int DesignTeamOrder { get; set; }
}
像
var o = { 'ProjectId': $(this).attr("projectid"),
'DesignTeamID': $(this).attr("designTeamID"),
'DesignTeamOrder': $(this).attr("designTeamOrder")
};
答案 1 :(得分:0)
ASP.NET MVC框架中的模型绑定很简单。您的操作方法需要数据,传入的HTTP请求包含您需要的数据。问题在于数据嵌入到POST格式的值中,可能还有URL本身。 Model Binding in MVC
模型绑定要求您的属性应与模型类匹配。
var o = { 'ProjectId': $(this).attr("projectid"),
'DesignTeamID': $(this).attr("designTeamID"),
'DesignTeamOrder': $(this).attr("designTeamOrder")
};