我使用下面的腳本搜索表格以顯示與用戶輸入匹配的結果。如果你在一個資本“K”,并以較低的“K”所期望的結果開始打字,結果根本不會出現,因為它不符合確切的用戶輸入。如何選擇.value()不區分大小寫?
$("#search_input").keyup(function() {
var value = this.value;
$("#table").find(".table_row").each(function(index) {
if (!index) return;
var id = $(this).find(".table_cell").first().text();
$(this).toggle(id.indexOf(value) !== -1);
});
});
uj5u.com熱心網友回復:
您提供的腳本的一部分,按原樣比較字串。最好將表格單元格的用戶輸入和文本 id小寫,以便比較兩個結果,然后切換您需要的內容。
$("#content").keyup(function() {
var value = this.value.toLowerCase();
$("#table").find(".table_row").each(function(index) {
if (!index) return;
var id = $(this).find(".table_cell").first().text();
if (id.toLowerCase().indexOf(value) !== -1) {
$(this).toggle();
}
});
});
還有一件事要補充。只是好奇,為什么要將字串比較的結果傳遞給 toggle ?Toggle期望兩個可選引數:持續時間和完整的回呼函式。如果您不需要加速或事后做某事,您只需按原樣切換即可。
沒有引數, .toggle() 方法只是切換元素的可見性
uj5u.com熱心網友回復:
對我來說,只需toLowerCase()同時用于可搜索元素和用戶輸入,就足以比較兩者的小寫值。
$("#search_input").keyup(function() {
var value = this.value.toLowerCase();
$("#table").find(".table_row").each(function(index) {
if (!index) return;
var id = $(this).find(".column-namelist").first().text();
$(this).toggle(id.toLowerCase().indexOf(value) !== -1);
});
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/351620.html
標籤:javascript 查询 搜索 区分大小写 不区分大小写
