Heim  >  Artikel  >  Web-Frontend  >  Beispiel für in JavaScript implementierte Such- und Hervorhebungsfunktionen

Beispiel für in JavaScript implementierte Such- und Hervorhebungsfunktionen

韦小宝
韦小宝Original
2018-01-22 09:56:431904Durchsuche

In diesem Artikel werden hauptsächlich die von JavaScript implementierten Such- und Hervorhebungsfunktionen vorgestellt, die das Durchlaufen von Javascript-Zeichen und die Bedienung von Seitenelementattributen umfassen. Freunde, die sich für JavaScript interessieren, können auf diesen Artikel verweisen

Szenario: wird zum Filtern der Daten in der Liste verwendet. PHP + MySQL wird nicht zum Filtern verwendet. Markieren Sie die Übereinstimmung. oder Nicht übereinstimmende werden ausgeblendet

Rendering:

html:

<p class="contracts-header">名称: <input type="text" value="" id="search_contract_name"></p>
<p class="contracts-header">代码: <input type="text" value="" id="search_contract_code" placeholder="不区分大小写"></p>
<p class="contracts-header"><button onclick="search()">查找</button></p>
<p 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>
</p>

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) { //两个输入框都有值
    search_contract_code = search_contract_code.toLowerCase(); //不区分大小写, 全部转换为小写, 下同
    $("input[name=&#39;contract[]&#39;]").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 = &#39;block&#39;;
          } else {
            // this.nextSibling.style.backgroundColor = "";
            this.parentNode.style.display = &#39;none&#39;; //隐藏不匹配的
          }
        }
    );
  } else if(search_contract_name || search_contract_code) { //只有一个输入框有值
    search_contract_name = search_contract_name.length ? search_contract_name : &#39;xxx&#39;; //默认为xxx是因为不可能存在xxx
    search_contract_code = search_contract_code.length ? search_contract_code.toLowerCase() : &#39;xxx&#39;;
    $("input[name=&#39;contract[]&#39;]").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 = &#39;block&#39;;
        } else {
          // this.nextSibling.style.backgroundColor = "";
          this.parentNode.style.display = &#39;none&#39;;
        }
      }
    );
  }
}

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für alle hilfreich ist, die JavaScript lernen. !

Verwandte Empfehlungen:

Beispielanalyse für JavaScript-Konstruktormuster

Wie JavaScript die Länge eines Objekts berechnet

Detaillierte Erläuterung des Typs und der Typbeurteilung in JavaScript

Das obige ist der detaillierte Inhalt vonBeispiel für in JavaScript implementierte Such- und Hervorhebungsfunktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn