fyp1984 发表于 2013-4-24 21:33:54

无需后台处理,前台代码实现模糊查询

用Jeecg生成的代码,默认查询功能均是全匹配查询模式,如需模糊查询,需要终端用户手动输入通配符(*)来达到目的。
这种实现方式,对用户体验不够友好。
一个简单的方案,就是系统帮助用户输入通配符,但对用户却是透明,以达到同样的效果。

代码如下:
1. syUtil.js文件增加以下代码:
***********************************************************************
/*
*
* 模糊查询输入域进行格式化,在原来值前后添加一个*
* 如:状态正常,格式化为:*状态正常*
*
*/
function fuzzyFormat(inputObjId){
    var oriValue = document.getElementById(inputObjId).value;
    document.getElementById(inputObjId).value = "*"+oriValue+"*";
}
/*
*
* 模糊查询输入域进行反格式化,去掉所有*
* 如:*状态正常*,反格式化为:状态正常
*
*/
function fuzzyTrim(inputObjId){
    var fuzzyValue = document.getElementById(inputObjId).value;
    document.getElementById(inputObjId).value = fuzzyValue.replace(/\*/g,"");
}
***********************************************************************

2.对应列表jsp页面中_search()脚本修改如下:
***********************************************************************
       //模糊查询输入域进行格式化,在原来值前后添加一个*
      fuzzyFormat("field1Search");
      fuzzyFormat("field2Search");
      datagrid.datagrid('load', sy.serializeObject(searchForm));
      //模糊查询输入域进行反格式化,去掉所有*
      fuzzyTrim("field1Search");
      fuzzyTrim("field2Search");
***********************************************************************

coolunwind 发表于 2013-4-24 21:53:01

后台sql脚本不需要写成like吗?

xjj_zyw 发表于 2013-4-25 11:18:59

强,顶一个:)

fyp1984 发表于 2013-4-26 16:02:29

coolunwind 发表于 2013-4-24 21:53 static/image/common/back.gif
后台sql脚本不需要写成like吗?

自动生成的代码,已经做过处理了,后台啥都不用动

熊猫的熊 发表于 2018-11-26 16:24:19

表示都加了没啥效果呀
页: [1]
查看完整版本: 无需后台处理,前台代码实现模糊查询