|
用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");
***********************************************************************
|
|