关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 16875|回复: 4

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

[复制链接]
发表于 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");
***********************************************************************

发表于 2013-4-24 21:53:01 | 显示全部楼层
后台sql脚本不需要写成like吗?
发表于 2013-4-25 11:18:59 | 显示全部楼层
强,顶一个
 楼主| 发表于 2013-4-26 16:02:29 | 显示全部楼层
coolunwind 发表于 2013-4-24 21:53
后台sql脚本不需要写成like吗?

自动生成的代码,已经做过处理了,后台啥都不用动
发表于 2018-11-26 16:24:19 | 显示全部楼层
表示都加了没啥效果呀
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表