发表于 2015-7-9 09:36:07

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]
查看完整版本: jQuery EasyUI + struts2.3 + mongoDB 列表查询翻页JAVA样例