63jqGrid - 复杂搜索

简介: 63jqGrid - 复杂搜索

同时在多重搜索中,如果这个选项是打开的,我们可以使用另一个非常有用的分组搜索选项。

用户可以在数据库做出更加复杂的搜索-像这样的查询也是可以的:

WHERE (id > 10 OR id < 13) AND name LIKE ‘C%’。

HTML代码举例

<html>
  <head>
    <title>jqGrid 实例</title>
  </head>
  <body>
    ···代码省略···
    <table id="grps"></table>
    <div id="pgrps"></div>
    ···代码省略···
  </body>
</html>

javascript代码举例

$(function(){
  pageInit();
});
function pageInit(){
  jQuery("#grps").jqGrid({
       url:ctx+'/JSONNameData',
    datatype: "json",
       colNames:['Inv No', 'Date', 'Client', 'Amount','Tax','Total','Notes'],
       colModel:[
         {name:'id',  key : true,  index:'id',  width:55},
         {name:'invdate',index:'invdate', width:90},
         {name:'name', index:'name',  width:100},
         {name:'amount',index:'amount', width:80, align:"right"},
         {name:'tax',index:'tax', width:80, align:"right"},
         {name:'total',index:'total', width:80,align:"right"},
         {name:'note',index:'note', width:150, sortable:false}
       ],
       rowNum:10,
      width:700,
       rowList:[10,20,30],
       pager: '#pgrps',
       sortname: 'invdate',
      viewrecords: true,
      sortorder: "desc",
    jsonReader: {
      repeatitems : false
    },
    caption: "Complex search",
    height: '100%'
  });
  jQuery("#grps").jqGrid('navGrid','#pgrps',
  {edit:false,add:false,del:false},
  {},
  {},
  {},
  {multipleSearch:true, multipleGroup:true}
  );
}

java servlet代码举例

package net.mn886.blog.jqgrid.functionality;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class JSONNameData
 */
public class JSONNameData extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public JSONNameData() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doPost(request, response);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String page = request.getParameter("page");
    String jsondata = "{}";
    if("1".equals(page)){
      jsondata = "{" +
          "    \"page\":\"1\"," +
          "    \"total\":2," +
          "    \"records\":\"13\"," +
          "    \"rows\":[" +
          "      {\"id\":\"10\",\"invdate\":\"2007-10-06\",\"name\":\"Client 2\",\"amount\":\"100.00\",\"tax\":\"20.00\",\"total\":\"120.00\",\"note\":null}," +
          "      {\"id\":\"11\",\"invdate\":\"2007-10-06\",\"name\":\"Client 1\",\"amount\":\"600.00\",\"tax\":\"120.00\",\"total\":\"720.00\",\"note\":null}," +
          "      {\"id\":\"9\",\"invdate\":\"2007-10-06\",\"name\":\"Client 1\",\"amount\":\"200.00\",\"tax\":\"40.00\",\"total\":\"240.00\",\"note\":null}," +
          "      {\"id\":\"13\",\"invdate\":\"2007-10-06\",\"name\":\"Client 3\",\"amount\":\"1000.00\",\"tax\":\"0.00\",\"total\":\"1000.00\",\"note\":null}," +
          "      {\"id\":\"8\",\"invdate\":\"2007-10-06\",\"name\":\"Client 3\",\"amount\":\"200.00\",\"tax\":\"0.00\",\"total\":\"200.00\",\"note\":null}," +
          "      {\"id\":\"12\",\"invdate\":\"2007-10-06\",\"name\":\"Client 2\",\"amount\":\"700.00\",\"tax\":\"140.00\",\"total\":\"840.00\",\"note\":null}," +
          "      {\"id\":\"7\",\"invdate\":\"2007-10-05\",\"name\":\"Client 2\",\"amount\":\"120.00\",\"tax\":\"12.00\",\"total\":\"134.00\",\"note\":null}," +
          "      {\"id\":\"6\",\"invdate\":\"2007-10-05\",\"name\":\"Client 1\",\"amount\":\"50.00\",\"tax\":\"10.00\",\"total\":\"60.00\",\"note\":\"\"}," +
          "      {\"id\":\"5\",\"invdate\":\"2007-10-05\",\"name\":\"Client 3\",\"amount\":\"100.00\",\"tax\":\"0.00\",\"total\":\"100.00\",\"note\":\"no tax at all\"}," +
          "      {\"id\":\"4\",\"invdate\":\"2007-10-04\",\"name\":\"Client 3\",\"amount\":\"150.00\",\"tax\":\"0.00\",\"total\":\"150.00\",\"note\":\"no tax\"}" +
          "    ]" +
          "  }";
    }else{
      jsondata = "{" +
          "    \"page\":\"2\"," +
          "    \"total\":2," +
          "    \"records\":\"13\"," +
          "    \"rows\":[" +
          "      {\"id\":\"2\",\"invdate\":\"2007-10-03\",\"name\":\"Client 1\",\"amount\":\"200.00\",\"tax\":\"40.00\",\"total\":\"240.00\",\"note\":\"note 2\"}," +
          "      {\"id\":\"3\",\"invdate\":\"2007-10-02\",\"name\":\"Client 2\",\"amount\":\"300.00\",\"tax\":\"60.00\",\"total\":\"360.00\",\"note\":\"note invoice 3 & and amp test\"}," +
          "      {\"id\":\"1\",\"invdate\":\"2007-10-01\",\"name\":\"Client 1\",\"amount\":\"100.00\",\"tax\":\"20.00\",\"total\":\"120.00\",\"note\":\"note 1\"}" +
          "    ]" +
          "  }";
    }
    response.getWriter().write(jsondata);
  }
}
目录
相关文章
|
6月前
|
JavaScript
vue实现下拉列表远程搜索示例(根据关键词模糊搜索)
vue实现下拉列表远程搜索示例(根据关键词模糊搜索)
|
JSON JavaScript 前端开发
82jqGrid - 搜索
82jqGrid - 搜索
28 0
|
JavaScript 数据格式
10jqGrid - 搜索操作
10jqGrid - 搜索操作
48 0
|
JavaScript 前端开发 Java
66jqGrid - 搜索模板
66jqGrid - 搜索模板
34 0
|
JavaScript 前端开发 Java
65jqGrid - 搜索中验证数据
65jqGrid - 搜索中验证数据
45 0
|
JavaScript 前端开发 Java
67jqGrid - 搜索操作工具栏
67jqGrid - 搜索操作工具栏
51 0
|
JavaScript 前端开发 Java
64jqGrid - 在搜索中显示查询条件
64jqGrid - 在搜索中显示查询条件
56 0
|
2月前
|
JSON JavaScript 前端开发
jQuery下拉框搜索模糊查询实现
【9月更文挑战4天】
103 10
|
3月前
|
JavaScript
js实现模糊搜索和排序
js实现模糊搜索和排序
14 0
|
3月前
|
JavaScript
js分页+搜索
js分页+搜索
42 0