2017-04-21 3 views
0

Ich versuche, die Tabelle mit einer Suchleiste durchsuchbar zu machen. Ich habe einen Code hinzugefügt, aber nur in der ersten Spalte der Tabelle gesucht. Ich möchte alle Spalten der Tabelle durchsuchbar machen. Kannst du mir bitte sagen, wie kann ich das tun? Hier ist mein Code.Ganze Tabelle durchsuchbar machen

$("#search").on("keyup", function() { 
    var value = $(this).val(); 

    $(".table tr").each(function(index) { 
     if (index !== 0) { 

      $row = $(this); 

      var id = $row.find("td:first").text(); 

      if (id.indexOf(value) !== 0) { 
       $row.hide(); 
       //$row.html('Records not found!'); 

       //$(".norecord").html('<td colspan="9">Records not found!</td>'); 
      } 
      else { 
       $row.show(); 

      } 
     } 


    }); 
}); 

Antwort

0

das Entfernen ‚: first‘ aus der Abfrage $row.find("td").text() sollten die Texte aller Spalten dieser Zeile zurück.

0

Ich würde regex anstelle von "indexOf" verwenden. so etwas wie dieses:

if ($(this).text().search(new RegExp(value, "i")) > -1) { 
    $(this).parents("tr").show(); 
} else { 
    $(this).parents("tr").hide(); 
} 

DEMO: https://jsfiddle.net/7qkgf14d/1/

Und dann, später, wenn Sie möchten, können Sie festlegen, mit welchem ​​Spalte, nach der Sie suchen möchten.

Verwandte Themen