jQuery EasyUI + struts2.3 + mongoDB 列表查询翻页JAVA样例
列表界面:主要实现方式:前台组合json格式查询条件,提交至后台解析处理
一.前台搜索脚本
String.prototype.replaceAll = function (s1, s2) {
return this.replace(new RegExp(s1,"gm"),s2);
};
function doMongoSearch(){
var whereCond = new Object();
$("input,select").each(function (index, domEle) {
var type = $(domEle).attr('type');
var query = $(domEle).attr('query').toUpperCase();
var name = $(domEle).attr('name');
var value = $(domEle).attr('value');
var checked = $(domEle).attr('checked');
var classVal = $(domEle).attr('class');
if (classVal != undefined){
if (classVal.indexOf("easyui-combobox") != -1){
value = $(domEle).combobox('getValue');
name = $(domEle).attr('id');
type = "text";
}else if (classVal.indexOf("easyui-datebox") != -1){
value = $(domEle).datebox('getValue');
name = $(domEle).attr('id');
type = "text";
}else if (classVal.indexOf("easyui-numberbox") != -1){
value = $(domEle).numberbox('getValue');
name = $(domEle).attr('id');
type = "text";
}
}
if((type =="text" || type=="select-one" || type=="hidden") && value != ""){
if (query == "BEGIN_DATE"){
whereCond["B$_"+name] = ">=@" + value.replaceAll("-","");
}else if (query == "END_DATE"){
whereCond["E$_"+name] = "=@" + value.replaceAll("-","")+ "000000000";
}else if (query == "END_TIME"){
whereCond["E$_"+name] = "@")){
if (queryObject.containsField(queryColumn)){
((BasicDBObject)queryObject.get(queryColumn)).append("$gt",queryValue.substring(2));
}else{
queryObject.put(queryColumn, new BasicDBObject("$gt",queryValue.substring(2)));
}
}else if (queryValue.startsWith(">INT@")){
if (queryObject.containsField(queryColumn)){
((BasicDBObject)queryObject.get(queryColumn)).append("$gt",new Integer(queryValue.substring(5)).intValue());
}else{
queryObject.put(queryColumn, new BasicDBObject("$gt",new Integer(queryValue.substring(5)).intValue()));
}
}else if (queryValue.startsWith(">=@")){
if (queryObject.containsField(queryColumn)){
((BasicDBObject)queryObject.get(queryColumn)).append("$gte",queryValue.substring(3));
}else{
queryObject.put(queryColumn, new BasicDBObject("$gte",queryValue.substring(3)));
}
}else if (queryValue.startsWith(">=INT@")){
if (queryObject.containsField(queryColumn)){
((BasicDBObject)queryObject.get(queryColumn)).append("$gte",new Integer(queryValue.substring(6)).intValue());
}else{
queryObject.put(queryColumn, new BasicDBObject("$gte",new Integer(queryValue.substring(6)).intValue()));
}
}else if (queryValue.startsWith("
页:
[1]