2015-07-13 23 views
4

我在我的網站上做了一個搜索按鈕,但是我有一個問題,當我刪除文本時,文本框是空的,沒有顯示任何東西,我想如果文本框是空的,那裏將顯示所有的項目。我怎樣才能做到這一點?jquery全部搜索時爲空

$(document).ready(function() { 
    $("#searchdata tr").show(); 

    $('#searchdata tr').each(function() { 
     $(this).attr('data-text', function() { 
      return $(this).text().toLowerCase(); 
     }); 
    }); 

    $('#searchbtn').bind('change keypress keyup change', function() { 
     $("#searchdata tr").hide(); 
     $('#searchdata tr[data-text*="' + $.trim($(this).val().toLowerCase()) + '"]').show();   
    }); 
}); 

而且我的網站:www.ledai.ae/locations

回答

2

你可以修改你的邏輯,以檢查是否值設置,並採取相應的行動。試試這個:

$('#searchbtn').bind('change keypress keyup change', function() { 
    var searchString = $.trim($(this).val().toLowerCase()); 
    if (searchString != '') { 
     $("#searchdata tr").hide().filter('tr[data-text*="' + searchString + '"]').show();  
    } else { 
     $("#searchdata tr").show(); 
    }  
}); 
+0

謝謝,這工作! – Jakub

+0

沒問題,很高興幫助。 –

1

相反的$("#searchdata tr").hide();,您可以使用toggle()

$("#searchdata tr").toggle(!this.value); 

你可能想修剪它用於處理輸入只得到空的空間:

$("#searchdata tr").toggle(!$.trim(this.value));