我的ajax代码是:
$.ajax({
url: "/Dashboard/filter",
data: jsonData,
traditional: true,
contentType: 'application/json',
dataType: 'json',
type: "POST",
success: function (data) {
console.error(data);
},
error: function (error) {
console.error(error);
}
});
和我的控制器动作:
[HttpPost]
public JsonResult filter(Utility.FJson filterjson)
{
return Json(new { });
}
实用工具类中的:
public class FilterJson
{
public string IdField { get; set; }
public string NameField { get; set; }
public int Check { get; set; }
public string SFilter { get; set; }
public string TFilter { get; set; }
}
public class FJson
{
public List<FilterJson> filter { get; set; }
}
错误按摩是:
POST http://localhost:38064/Dashboard/filter 500(内部服务器错误)
我希望将json发送到mvc控制器。 如果JSON.stringify(jsonData)在发送时间.in控制器filterjson变量为NULL
答案 0 :(得分:2)
您可以使用以下代码以类的形式发送和接收Json
Ajax代码是:
var data = "{filter :[{IdField: '2', NameField: 'filter item', Check: 1 , SFilter: 'filter search' , TFilter: 'filter text'}]}";
$.ajax({
url: '/home/filter',
dataType: 'json',
type: 'POST',
data: data,
contentType: 'application/json; charset=utf-8',
success: function (data) {
alert(data);
},
error: function () {
alert("error");
}
});
班级:
public class FilterJson
{
public string IdField { get; set; }
public string NameField { get; set; }
public int Check { get; set; }
public string SFilter { get; set; }
public string TFilter { get; set; }
}
public class FJson
{
public List<FilterJson> filter { get; set; }
}
控制器动作是:
[HttpPost]
public JsonResult filter(FJson filterjson)
{
return Json(new { });
}