Jquery Ajax向C#MVC控制器传递数组

接收参数类
public class MadeCategoryDTO{
public KeyOperValueDTO[] whereExpression { get; set; }//查询条件
public int PageSize { get; set; } //每页几笔
public int PageNumber { get; set; } //目前第几页
}
//查询条件类别
public class KeyOperValueDTO{
public String searchField { get; set; }//查询字段
public String searchOper { get; set; }//查询操作
public String searchString { get; set; }//查询值
}
//控制器
[HttpPost]
public void GetList(MadeCategoryDTO madeCategory){
}

JS
$(function(){
var where = [];
where.push({ "searchField": "materialName", "searchOper": "eq", "searchString": "有限公司" });
});
var madeCategory = {
whereExpression: where,
PageSize: 10,//每页几笔
PageNumber: 1,//目前第几页
};
$.ajax({
type: "post",
url: "Made_Category/GetList",
data: madeCategory,
dataType: "json",
success: function (data) {
},
});
後端接收的三个值是null值

第1个回答  2014-11-19
你的where不是全局变量啊,追问

where在初始化的时候就声明了,与全局变量什么的应该没什么关系,而且我也试了还是null值

第2个回答  2014-11-19
var where = []; ‘[]’

试着前台调试下 看看异步成功返回的结果data是否有数据追问

where保存的是条件,我上面做的就是根据用户选择的条件进行资料查询,调试的是返回全部,而我要的是查询过后的数据

追答

查询过后的数据
那应该在change事件里面来写方法
而不是加载时就存放

本回答被网友采纳