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

JavaScript實(shí)現(xiàn)的搜索及高亮顯示功能示例

 更新時(shí)間:2017年08月14日 12:09:45   作者:myD  
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的搜索及高亮顯示功能,涉及javascript字符遍歷與頁(yè)面元素屬性相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了JavaScript實(shí)現(xiàn)的搜索及高亮顯示功能。分享給大家供大家參考,具體如下:

情景: 用來(lái)篩選列表中的數(shù)據(jù), 由于單條數(shù)據(jù)很簡(jiǎn)短, 沒(méi)有用php+mysql去實(shí)現(xiàn)篩選功能, 只用javascript進(jìn)行篩選, 匹配的高亮, 或者將不匹配的隱藏掉

效果圖:

html:

<div class="contracts-header">名稱(chēng): <input type="text" value="" id="search_contract_name"></div>
<div class="contracts-header">代碼: <input type="text" value="" id="search_contract_code" placeholder="不區(qū)分大小寫(xiě)"></div>
<div class="contracts-header"><button onclick="search()">查找</button></div>
<div id="contracts-list">
  <ul>
  <li><input type="checkbox" name="contract[]" value="code|name" /><span>name(code)</span></li>
  <li><input type="checkbox" name="contract[]" value="code|name" /><span>name(code)</span></li>
  </ul>
</div>

javascript:

function search()
{
  var search_contract_name = $("#search_contract_name").val();
  var search_contract_code = $("#search_contract_code").val();
  if (search_contract_name && search_contract_code) { //兩個(gè)輸入框都有值
    search_contract_code = search_contract_code.toLowerCase(); //不區(qū)分大小寫(xiě), 全部轉(zhuǎn)換為小寫(xiě), 下同
    $("input[name='contract[]']").each(
        function () {
          var code_name = this.value;
          var search_code = code_name.toLowerCase().indexOf(search_contract_code); 
          var search_name = code_name.toLowerCase().indexOf(search_contract_name);
          if (search_code >=0 && search_name >=0 ) {
            // this.nextSibling.style.backgroundColor = "#FFDEAD"; //高亮匹配到的
            this.parentNode.style.display = 'block';
          } else {
            // this.nextSibling.style.backgroundColor = "";
            this.parentNode.style.display = 'none'; //隱藏不匹配的
          }
        }
    );
  } else if(search_contract_name || search_contract_code) { //只有一個(gè)輸入框有值
    search_contract_name = search_contract_name.length ? search_contract_name : 'xxx'; //默認(rèn)為xxx是因?yàn)椴豢赡艽嬖趚xx
    search_contract_code = search_contract_code.length ? search_contract_code.toLowerCase() : 'xxx';
    $("input[name='contract[]']").each(
      function () {
        var code_name = this.value;
        var search_code = code_name.toLowerCase().indexOf(search_contract_code);
        var search_name = code_name.toLowerCase().indexOf(search_contract_name);
        if (search_code >=0 || search_name >=0 ) {
          // this.nextSibling.style.backgroundColor = "#FFDEAD";
          this.parentNode.style.display = 'block';
        } else {
          // this.nextSibling.style.backgroundColor = "";
          this.parentNode.style.display = 'none';
        }
      }
    );
  }
}

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

南昌市| 南丰县| 太和县| 西藏| 濉溪县| 利川市| 平果县| 城固县| 鄂伦春自治旗| 黔南| 正镶白旗| 扶余县| 永济市| 怀仁县| 宝清县| 连南| 玉门市| 射洪县| 韶山市| 双峰县| 大悟县| 句容市| 乌鲁木齐市| 霍林郭勒市| 鄂托克旗| 无极县| 宜君县| 封丘县| 公安县| 曲周县| 庆云县| 岑巩县| 溧水县| 尼玛县| 桐乡市| 彝良县| 双鸭山市| 加查县| 屏东县| 宁津县| 澜沧|