首先我们来看看一个页面 这里面有多选的条件,大于,小于等等,包括每个字段都有 如此多的查询条件,我们的后台该如何实现呢? 难道我们还得每个参数都去判断吗? 那得传多少参数进来才能实现这个页面的功能啊! 既然用了EF当然不能在用sql拼接了 那么我们就 ...
首先我们来看看一个页面
这里面有多选的条件,大于,小于等等,包括每个字段都有
如此多的查询条件,我们的后台该如何实现呢?
难道我们还得每个参数都去判断吗?
那得传多少参数进来才能实现这个页面的功能啊!
既然用了EF当然不能在用sql拼接了
那么我们就来看看这个页面是怎么实现的吧
首先我们来看看这个页面的参数是怎么传到后台的
这是获取查询条件的脚本
1 var filterRules = new Array(); 2 $(op.toolbarid).find("input[type!='button'][data-disable!='true'],select[data-disable!='true']").each(function () { 3 var isadd = false; 4 var value = $(this).val(); 5 if (this.type == "checkbox" || this.type == "radio") { 6 isadd = this.checked; 7 } else if (value) { 8 isadd = true; 9 }10 if (isadd) {11 var field = $(this).data("field");12 if (!field) {13 field = this.id;14 }15 var op = $(this).data("op");16 var time_add = $(this).data("time-add");17 if (time_add || $(this).data("time-today")) {18 if (time_add) {19 value = (new Date(Date.parse(value.replace(/-/g, "/")).getTime() + parseInt(time_add) * 86400000)).Format("yyyy-MM-dd");20 } else {21 var new_value = (new Date(Date.parse(value.replace(/-/g, "/")).getTime() + 86400000)).Format("yyyy-MM-dd");22 filterRules.push({ group: $(this).data("group"), field: field, op: "<", split: $(this).data("split"), value: new_value });23 op = ">=";24 }25 }26 filterRules.push({ group: $(this).data("group"), field: field, op: op, split: $(this).data("split"), value: value });27 }28 });29 options.filterRules = filterRules;
原标题:EF之高级查询
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。