最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

easyui combogrid實現(xiàn)本地模糊搜索過濾多列

 更新時間:2017年05月13日 14:43:40   作者:bwju  
本篇文章主要介紹了easyui combogrid實現(xiàn)本地模糊搜索過濾多列,非常具有實用價值,需要的朋友可以參考下

這幾天在項目中前臺使用到了easyui 的 combogrid插件為用戶提供點選數(shù)據(jù)項的功能。由于數(shù)據(jù)項的內容可能有很多,所以僅僅是點選還不夠,需要能夠對用戶的輸入進行過濾,即根據(jù)用戶的輸入將某一列與用戶輸入匹配的數(shù)據(jù)項篩選保留下來。

實現(xiàn)這一功能需要以下幾個步驟:

1.聲明一個combogrid

<div class="fitem"> 
      <label>盤條基本信息編號:</label> 
      <input class="easyui-combogrid" type="text" id="addWireRodId" name="wireRodId" style="width: 150px" 
          data-options="required:true"></input> 
</div> 

2.js中請求combogrid需要加載的數(shù)據(jù)

var wireRod; 
    $.ajax({ 
      url: "../wireRod/getAll?rows=100000&sort=id&order=asc", 
      type: "post", 
      dataType: "json", 
      success: function (result) { 
        wireRod = result.wireRod.list; 
      } 
}); 

3.對combogrid進行配置

$("#addWireRodId").combogrid({ 
      idField:'id', 
      textField:'codeDesc', 
      remoteSort: false, 
      panelWidth: 360, 
      columns: [[ 
        {field: 'codeDesc', title: '盤條序號', sortable: true, width: 70}, 
        {field: 'code', title: '盤條編碼'}, 
        {field: 'name', title: '盤條名稱'}, 
        {field: 'specification', title: '盤條規(guī)格'}, 
      ]], 
      onSelect: function (index,row) { 
        //業(yè)務功能,不予展示 
      }, 
      onChange: function (q){ 
        doSearch(q,wireRod,['codeDesc','code','name','specification'],$(this)); 
      }, 
      onShowPanel:function () { 
          $(this).combogrid('grid').datagrid('loadData', wireRod); 
      } 
    }); 

4.doSearch方法

//q為用戶輸入,data為遠程加載的全部數(shù)據(jù)項,searchList是需要進行模糊搜索的列名的數(shù)組,ele是combogrid對象 
//doSearch的思想其實就是,進入方法時將combogrid加載的數(shù)據(jù)清空,如果用戶輸入為空則加載全部的數(shù)據(jù),輸入不為空 
//則對每一個數(shù)據(jù)項做匹配,將匹配到的數(shù)據(jù)項加入rows數(shù)組,相當于重組數(shù)據(jù)項,只保留符合篩選條件的數(shù)據(jù)項, 
//如果篩選后沒有數(shù)據(jù),則combogrid加載空,有數(shù)據(jù)則重新加載重組的數(shù)據(jù)項 
function doSearch(q,data,searchList,ele){ 
    ele.combogrid('grid').datagrid('loadData', []); 
    if(q == ""){ 
      ele.combogrid('grid').datagrid('loadData', data); 
      return; 
    } 
    var rows = []; 
    $.each(data,function(i,obj){ 
      for(var p in searchList){ 
        var v = obj[searchList[p]]; 
        if (!!v && v.toString().indexOf(q) >= 0){ 
          rows.push(obj); 
          break; 
        } 
      } 
    }); 
    if(rows.length == 0){ 
      ele.combogrid('grid').datagrid('loadData', []); 
      return; 
    } 
    ele.combogrid('grid').datagrid('loadData', rows); 
  } 

combogrid有兩種mode,local和remote,默認為local,其實remote mode也可以做多列模糊搜索,因為它會向后臺發(fā)送一個包含叫做‘q'的參數(shù)的http請求以請求過濾后的數(shù)據(jù),但是這樣的不好在于,明明我們已經(jīng)向后臺請求過一次全部的數(shù)據(jù),為什么還要再多次請求過濾的數(shù)據(jù)呢,服務器的負載會加重,所以這種事情能在前端做了就挺好

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • JS中常見編碼及加密方式解析

    JS中常見編碼及加密方式解析

    這篇文章主要為大家介紹了JS中常見編碼及加密方式解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • javascript的currying函數(shù)介紹

    javascript的currying函數(shù)介紹

    curring的概念將函數(shù)式編程的概念和默認參數(shù)以及可變參數(shù)結合在一起.一個帶n個參數(shù),curried的函數(shù)固化第一個參數(shù)為固定參數(shù),并返回另一個帶n-1個參數(shù)的函數(shù)對象,分別類似于LISP的原始函數(shù)car和cdr的行為。currying能泛化為偏函數(shù)應用(partial function application, PFA),p 這種函數(shù)將任意數(shù)量(順序)的參數(shù)的函數(shù)轉化為另一個帶剩余參數(shù)的函數(shù)對象
    2012-02-02
  • JavaScript中的普通函數(shù)與構造函數(shù)比較

    JavaScript中的普通函數(shù)與構造函數(shù)比較

    這篇文章主要介紹了JavaScript中的普通函數(shù)與構造函數(shù)比較,需要的朋友可以參考下
    2015-04-04
  • 如何基于js判斷瀏覽器版本

    如何基于js判斷瀏覽器版本

    這篇文章主要介紹了如何基于js判斷瀏覽器版本,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • webpack中使用iconfont字體圖標的方法

    webpack中使用iconfont字體圖標的方法

    下面小編就為大家分享一篇webpack中使用iconfont字體圖標的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • javascript解析xml實現(xiàn)省市縣三級聯(lián)動的方法

    javascript解析xml實現(xiàn)省市縣三級聯(lián)動的方法

    這篇文章主要介紹了javascript解析xml實現(xiàn)省市縣三級聯(lián)動的方法,涉及javascript針對節(jié)點的操作與XML文件解析的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 微信小程序如何實現(xiàn)數(shù)據(jù)共享與方法共享詳解

    微信小程序如何實現(xiàn)數(shù)據(jù)共享與方法共享詳解

    這篇文章主要給大家介紹了關于微信小程序如何實現(xiàn)數(shù)據(jù)共享與方法共享的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-01-01
  • javascript創(chuàng)建動態(tài)表單的方法

    javascript創(chuàng)建動態(tài)表單的方法

    這篇文章主要介紹了javascript創(chuàng)建動態(tài)表單的方法,實例分析了javascript動態(tài)操作頁面表單元素的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 基于Bootstrap重置輸入框內容按鈕插件

    基于Bootstrap重置輸入框內容按鈕插件

    pureClearButton是一款基于Bootstrap的非常實用的用于清空和重置input輸入框內容的jQuery按鈕插件,感興趣的小伙伴們可以參考一下
    2016-05-05
  • 一文搞懂JavaScript如何實現(xiàn)圖片懶加載

    一文搞懂JavaScript如何實現(xiàn)圖片懶加載

    圖片懶加載,往往作為減少首頁白屏時間的一個解決方案而出現(xiàn)。本文將通過示例帶大家一起探究一下JavaScript是如何實現(xiàn)圖片懶加載的,感興趣的可以了解一下
    2022-06-06

最新評論

攀枝花市| 衡阳市| 潢川县| 宣威市| 分宜县| 宜良县| 随州市| 北川| 古交市| 雷山县| 普格县| 贵定县| 曲水县| 贵港市| 呼玛县| 长武县| 焦作市| 平顶山市| 澄迈县| 武城县| 黄冈市| 南宁市| 会昌县| 临清市| 阿尔山市| 武川县| 临洮县| 小金县| 贵港市| 兰溪市| 洱源县| 正镶白旗| 绥化市| 承德市| 湘潭县| 图们市| 昭觉县| 台北县| 新邵县| 周至县| 石渠县|