利用ajax,进行无刷新搜索数据时(因为有用户输入的条件和下拉框里的条件,为了实现用户搜索后,输入和所选条件不清空),需要提交Form表单,因为条件多且采用的mvc框架,后台利用自定义的Model类进行接收。
其实把json数据以string的类型传进后台,再进行数据转换,然后取值是最常用的方法。但是我想用model类进行接收不行吗?
报着这样的心态,和不甘心,作者在网上阅览很多资料,终于把问题解决,而且还学到很多知识。下面是代码及解释:
视图页:
var param = $("#form1").serializeArray(); //将form表单序列化成json数组
var obj = {};
for (var i = 0; i < param.length; i++) {
obj[param[i].name] = param[i].value;//数据类型为"自定义类的字段名=数据"后台会自动对数据进行匹配
}
$.ajax({
url: "" ,
data: obj,//将数据传入后台
type: "post",
success: function (data) {
$.each(data,function(e,item)
{
//数据处理
})
controller页:
数据传进来会对Printrecord类中相应的字段进行赋值。
Model类:
注意:传进来的字段,在此类中必须存在。