我想通过请求ajax将所有数据放入一个对象。
这些数据通过一个功能进入我的控制器。 在我的数据标题中,我有这些信息:
我有4个对象allPly创建,但所有数据(克,乳液和其他)等于null或零。 但数据评论和OtherData没关系,这很有效。
感谢您的帮助
我的要求:
var params={};
var allStep21 ={allData..}
$.extend(params,allStep21);
$.ajax({
type: "POST",
url: "Request",
data: params,
});
标题html:
allPly[0][Gramme]:10
allPly[0][Toto]:White
allPly[0][Test]:None
allPly[0][Lotion]:1
allPly[1][Grammage]:11
allPly[1][Toto]:White
allPly[1][Test]:Fine
allPly[1][Lotion]:0
OtherData : 585
Comment: all it's ok
在我的控制器中:
[HttpPost]
public ActionResult Request(AllStep21 allStep21)
{
}
在我的模特中:
public class AllStep21
{
public String OtherData { get; set; }
public String Comment { get; set; }
public List<allPly> allPly { get; set; }
}
public class allPly
{
public int Gramme { get; set; }
public String Toto { get; set; }
public String Test { get; set; }
public int Lotion { get; set; }
}
答案 0 :(得分:1)
您可以使用JSON请求,该请求允许您将任意复杂对象发送到控制器操作:
var params = {
allStep21: {
comment: 'some comment',
otherData: 'some other data',
allPly: [
{ toto: 'toto 1', test: 'test 1', lotion: 1, gramme: 1 },
{ toto: 'toto 2', test: 'test 2', lotion: 2, gramme: 2 }
]
}
};
$.ajax({
url: 'Request',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(params),
success: function(result) {
alert('successs');
}
});
此处显示的JSON.stringify
方法本身内置于所有现代浏览器中。但是,如果您需要支持旧版浏览器,则需要包含json2.js脚本。
答案 1 :(得分:-1)