我正在尝试使用对mvc的jquery ajax调用将类对象说的employee作为第一个参数和一个布尔值参数与employee对象一起传递。像这样data:{'emp':objemp,'flag':true}
但是在控制器操作方法中,我没有得到objemp。
任何人都可以帮助我如何解决这个问题。
提前感谢
*样本代码:这是示例Ajax调用
$.ajax({
type: "GET",
url: gridOption.getDataURL,
data: 'filters=' + JSON.stringify(filters) + '&applyDefaultDateFilter=' + applyDefaultDateFilter,
dataType: "json",
success: function (data) {
JsonData = data.data;
},
});
这是上面的ajax调用调用的示例MVC控制器
public ActionResult LeadList(Filters filters, bool applyDefaultDateFilter = false)
{
.
.
.}
在这里,我正在以ajax调试器的形式获取数据
“ filters = {” StartDate“:null,” EndDate“:null,” DealerID“:” e2a389fb-501a-ea11-a811-000d3aa87c07“,” StatusCode“:null,” LeadType“:null}&applyDefaultDateFilter = True”
但是在Mvc控制器端,过滤器为null,applyDefaultDateFilter值为true
更新
var filters= {'nameProp1':'value','nameProp2':'value'}
OR
var filters=$('filterform');
$.ajax({
type: "GET",
url: gridOption.getDataURL,
data: {'filters' : JSON.stringify(filters) , 'applyDefaultDateFilter' : applyDefaultDateFilter},
dataType: "json",
success: function (data) {
JsonData = data.data;
},
});
实际上您的ajax调用无法识别该类,因为它不是JQuery
对象。因此,您需要做的是在JSON
中手动构造过滤器类,或将表单类型dom
元素存储到变量中。
并且请记住,这些控件在为MVC创建数据类型时仅存储名称标签