Filtrando Tabela

Digite algo no campo de entrada para pesquisar na tabela por nomes, sobrenomes ou e-mails:


Primeiro Nome Sobrenome Email
João Ninguém joao@examplo.com
Maria da Silva maria@mail.com
Julio Moscado julio@grandescaras.com
Anjelina Não Jolie angel@sweet.com

Observe que iniciamos a pesquisa em tbody, para evitar a filtragem dos cabeçalhos da tabela.


Código da página


<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Examplo Filtrando dados Tabela</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
</head>
<body>

  <div class="container mt-3">
    <h2>Filtrando Tabela</h2>
    <p>
        Digite algo no campo de entrada para pesquisar na tabela por nomes, sobrenomes ou e-mails:
    </p>
    <input class="form-control" id="myInput" type="text" placeholder="Procurar..">
    <br>
    <table class="table table-bordered">
      <thead>
        <tr>
          <th>Primeiro Nome</th>
          <th>Sobrenome</th>
          <th>Email</th>
        </tr>
      </thead>
      <tbody id="myTable">
        <tr>
          <td>João</td>
          <td>Ninguém</td>
          <td>joao@examplo.com</td>
        </tr>
        <tr>
          <td>Maria</td>
          <td>da Silva</td>
          <td>maria@mail.com</td>
        </tr>
        <tr>
          <td>Julio</td>
          <td>Moscado</td>
          <td>julio@grandescaras.com</td>
        </tr>
        <tr>
          <td>Anjelina</td>
          <td>Não Jolie</td>
          <td>angel@sweet.com</td>
        </tr>
      </tbody>
    </table>

    <p>Observe que iniciamos a pesquisa em tbody, para evitar a filtragem dos cabeçalhos da tabela.</p>
  </div>

  <script>
$(document).ready(function(){
  $("#myInput").on("keyup", function() {
    var value = $(this).val().toLowerCase();
    $("#myTable tr").filter(function() {
      $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
    });
  });
});
  </script>

</body>
</html>