jqgrid 自定义文本框、选择框等查询

要实现jqgrid的自定义查询可通过表格获取查询的条件,再给jqgrid表格发送postData参数。

HTML:

<table id="querytable" border="0" cellspacing="0" cellpadding="0" class="table">
  <tr>
    <td>
    <label>性别:</label>
    </td>
    <td>
      <select id="sex" name="sex">
        <option value="1"></option>
        <option value="2"></option>
      </select>
    </td>
  </tr>
  <tr>
    <td>
      <label>部门</label>
    </td>
    <td>
      <input type="text" id="department" name="department">
    </td>
  </tr>
</table>

 Js:

$("#find").click(function () {
            var queryParams = jgGrid.getGridParam();                        //取到jqgrid的参数
            queryParams["postData"].params =  $("#querytable").formobj();    //把查询条件表格的数据给过去
            $("#list2").jqGrid('setGridParam', {                            //jqgrid表格执行方法把条件参数传过去
                 datatype:'json' ,
                 postData:queryParams
            }).trigger('reloadGrid');    //刷新表格
        });

这样写了之后,还得在sql语句中加入if判断:

 <select id="selectAll" parameterType="java.lang.Object"  resultType="java.util.Map">
      select name,sex,age,department from user
      <where><if test="params.sex!=null and params.sex!=''">
             AND sex like '%'||#{params.sex}||'%'
         </if>
         <if test="params.department!=null and params.department!=''">
             AND department like '%'||#{params.department}||'%'
         </if>
      </where>
  </select>

即可。

猜你喜欢

转载自www.cnblogs.com/liujunyao/p/12130976.html