2017-12-19 32 views
0
function search() { 
    $("#myInput").keyup(function() { 
     var value = this.value; 

     $("table").find("tr").each(function(index) { 
      if (index === 0) return; 
      var id = $(this).find("td").first().text(); 
      $(this).toggle(id.indexOf(value) !== -1); 
     }); 
    }); 
} 

上記のコードは、HTMLでテーブルを検索するために使用していますが、「hello」や「HeLLo」などの値が入力されていることを確認する方法はありません。それはまだ検索されると表示されます。本質的に私が言っているのは、どうすればこのコードは大文字と小文字を区別しないのですか?Jquery - 大文字と小文字を区別しない検索

答えて

4

小文字または大文字にします。その後、

String.prototype.contains = function(src) { 
    var srcUpper = src.toUpperCase(); 
    var thisUpper= this.toUpperCase(); 
    return srcUpper.indexOf(thisUpper) > -1; 
} 

そして、それを使用します?どこかあなたのコードの先頭で

1つの文字列が小文字を区別せずに、別のケースが含まれている場合は、検索するための特別なメソッドを追加しないのはなぜ
function search() { 
    $("#myInput").keyup(function() { 
     var value = this.value.toLowerCase(); 

     $("table").find("tr").each(function(index) { 
      if (index === 0) return; 
      var id = $(this).find("td").first().text().toLowerCase(); 
      $(this).toggle(id.indexOf(value) !== -1); 
     }); 
    }); 
} 
+0

ええ、これはトリックでした。ありがとよ。 – Csarg

1

いつでもどこでも必要なメソッドの名前を変更できます(

)コードは次のようになります:

function search() { 
    $("#myInput").keyup(function() { 
     var value = this.value; 

     $("table").find("tr").each(function(index) { 
      if (index === 0) return; 
      var id = $(this).find("td").first().text(); 
      $(this).toggle(id.contains(value)); 
     }); 
    }); 
} 
関連する問題