问题描述
因为项目的需求添加了药品类型这个字段,实时数据的查询条件里也增加了按药品类型查询的 查询方式,在完成这个功能时,在使用select来选择查询条件,但选择的查询条件总是0(主用药品),解决方式如下:
- java程序
全选示例 :
private Map<String, Object> getMedicineInfoDatas(int page, int rows,String enterpriseName,String createTime,String query,int isBackUp) throws Exception { ............................. //这里的isBackUp总是为零,原因是int 的初始化值为0,也就是说参数isBackUp值未传入 if(isBackUp == 1){ querySql.append(" and ").append(" isBackUp = 1 "); objs.add("%"+isBackUp+"%"); } else if(isBackUp == 0){ querySql.append(" and ").append(" isBackUp = 0 "); objs.add("%"+isBackUp+"%"); }
- js代码:
全选示例 :
//select语句如下 <select id="isBackUp" style="width:100px;"> <option value="-1">所有</option> <option value="0">主用</option> <option value="1">备用</option> </select> //普通搜索提交; 使用isBackUp:$("#isBackUp").val()拿到了参数 function serch(v){ $('#data').datagrid('load',{createTime:$("#query").val(),enterpriseName:$("#sele").combobox('getValue'),query:v,isBackUp:$("#isBackUp").val()}); } /** 这样是拿到了参数,但默认值无法设置,所以使用了Easyui datagrid里的参数 queryParams来解决这个问题,如下: */ function datagrid(columns){ var col= eval(columns); $('#data').datagrid({ striped :true,//各行变色 border :false, fit :false,//table自适应,这个如果为true,很多情况下无法显示 rownumbers :true,//是否第一列显示序号 fitColumns :true,//列自适应 singleSelect :true,//只允许选中一行 pagination :true,//是否显示页码 idField :'encoding', url : "<c:url value='/store/medicineInfo/getMedicineInfoData'/>", queryParams:{isBackUp:-1}, columns :col, onLoadSuccess:function(){ //一定要加上这一句,要不然datagrid会记住之前的选择状态,删除时会出问题。 $('#data').datagrid('clearSelections'); } });
在项目中遇到一个问题,需要根据药品类型进行实时数据查询。在选择查询条件时,选择的药品类型总是默认为0(主用药品)。解决方法涉及到Java和JavaScript代码,通过正确获取URL中的queryParams来解决查询条件获取错误的问题。
865

被折叠的 条评论
为什么被折叠?



