成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? easyUI實現類似搜索框關鍵詞自動提示功能示例代碼
全站頭部文字 我要出現在這里
easyUI實現類似搜索框關鍵詞自動提示功能示例代碼 726 2024-02-07   

在一個DataGrid里面,搜索行所在位置

實現的效果如下:

查看圖片

在搜索框中輸入部分列名關鍵字,即可匹配到行的位置。

EasyUI的SearchBox組件只提供了靜態搜索框,我們可以使用ComboBox來實現動態的自動關鍵匹配效果,并且不需要加載遠程數據。當前頁面的DataGrid的數據我們可以直接在本地獲取之。

代碼如下:

setp1、創建combobox

<div style="text-align: left;background-color: #E0ECFF;padding-left: 10px;padding-top: 5px;"> 
  <div id="searchField" style="width:250px"></div> 
</div> 

step2、實現本地數據加載

 $("#searchField").combobox({ 
  loader: function(param,success,error){ 
    //獲取輸入的值 
    var q = param.q || ""; 
    //此處q的length代表輸入多少個字符后開始查詢 
    if(q.length <= 0) return false; 
    var rows = $('#fieldList').datagrid('getRows'); 
    var items = $.map(rows, function (item, index) { 
      //匹配條件,忽略大小寫 
      if(item.fieldName && (item.fieldName.toLowerCase().indexOf(q.toLowerCase()) != -1)){ 
        return { 
          "fieldName": item.fieldName 
        }; 
      } 
    }); 
    success(items); 
  }, 
  onBeforeLoad:function () { 
    //設置placeholder 
    $("input[class='textbox-text validatebox-text textbox-prompt']").attr("placeholder","輸入標注字段,定位所在行"); 
  }, 
  mode: 'remote', 
  textField:'fieldName', 
  valueField:'fieldName', 
  onSelect : function(record){ 
    var $filedList = $('#fieldList'); 
    var rows = $filedList.datagrid('getRows'); 
    if(rows && rows.length > 0){ 
      for(var r = 0 ; r < rows.length ; r++){ 
        if(rows[r].fieldName == record.fieldName){ 
          $filedList.datagrid('selectRow',r); 
          break; 
        } 
      } 
    } 
  } 
}); 

load是一個適配器,它將本地數據轉換成combobox所需的數據格式:

var rows = $('#fieldList').datagrid('getRows'); 
var items = $.map(rows, function (item, index) { 
  //匹配條件,忽略大小寫 
  if(item.fieldName && (item.fieldName.toLowerCase().indexOf(q.toLowerCase()) != -1)){ 
    return { 
      "fieldName": item.fieldName 
    }; 
  } 
}); 

首先我們通過datagrid的getRows方法獲取當前數據表的所有行,然后通過map轉換。

success(items); 

到此就完成了數據的轉換

step3、實現行的選中

onSelect : function(record){ 
    var $filedList = $('#fieldList'); 
    var rows = $filedList.datagrid('getRows'); 
    if(rows && rows.length > 0){ 
      for(var r = 0 ; r < rows.length ; r++){ 
        if(rows[r].fieldName == record.fieldName){ 
          $filedList.datagrid('selectRow',r); 
          break; 
        } 
      } 
    } 
  } 

在onSelect事件中,匹配所在行調用selectRow即可。

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


UI

主站蜘蛛池模板: ctv5| 美女舌吻| 放烟花的视频| 江南好简谱| 萧明| 桐谷| 死神来了6绝命终结站| 重温经典节目预告| 经典常谈周易第二读书笔记| 吻戏韩剧| 2024独一无二头像| 火舞俪人 电影| 风月电视剧免费观看剧情 | 人蛇大战 电影| 陈建斌梅婷新剧《不惑之旅》| 神仙我才不稀罕短剧在线观看| 王紫瑄| 哈尔的移动城堡免费完整版| 蜘蛛侠4英雄无归| 没有下巴| 纵横欲海| 2023中国十大廉洁人物事迹| 在线观看高清电影| 奇奇颗颗说恐龙| 土耳其电影水与火| 安息2| 智乐星中考| 四川经济频道节目表| 让我们的家更美好教学设计| 池田夏希| 周末的后宫| 成人的性行为免费| 黑暗圣经在线观看| 松雪泰子| 我亲爱的简谱| 美国电影waseas| 让娜迪尔曼| 相见故明月| 胎心监护多少周开始做| 谢容儿| 舞法天女之绚彩归来演员表|

!!!站長長期在線接!!!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103