如何过滤/搜索表格

学习如何使用 JavaScript 创建可过滤的表格。

过滤表格

ਜਿਸ ਤਰ੍ਹਾਂ ਨਾਲ JavaScript ਦੀ ਮਦਦ ਨਾਲ ਸਪੱਸ਼ਟ ਤੌਰ 'ਤੇ ਤੇਲੀਕਾ ਤੇਲਣ ਲਈ ਤੇਲਬੋਰਡ ਵਿੱਚ ਤੇਲ ਲਗਾਓ।

Name Country
Alfreds Futterkiste Germany
Berglunds snabbkop Sweden
Island Trading UK
Koniglich Essen Germany
Laughing Bacchus Winecellars Canada
Magazzini Alimentari Riuniti Italy
North/South UK
Paris specialites France

ਸਿੱਧੇ ਮੋਹਰੇ ਨਾਲ ਪ੍ਰਯੋਗ ਕਰੋ

ਇੱਕ ਫਿਲਟਰ ਕਰਨ ਵਾਲਾ ਟੇਬਲ ਬਣਾਓ

ਕਦਮ 1 - ਐੱਚਟੀਐੱਮਐੱਲ ਜੋੜੋ:

<input type="text" id="myInput" onkeyup="myFunction()" placeholder="Search for names..">
<table id="myTable">
  <tr class="header">
    <th style="width:60%;">Name</th>
    <th style="width:40%;">Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Berglunds snabbkop</td>
    <td>Sweden</td>
  </tr>
  <tr>
    <td>Island Trading</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>Koniglich Essen</td>
    <td>Germany</td>
  </tr>
</table>

ਕਦਮ 2 - ਸੀਐੱਸਐੱਸ ਜੋੜੋ:

ਇਨਪੁਟ ਐਲੀਮੈਂਟ ਅਤੇ ਟੇਬਲ ਦੇ ਸਟਾਈਲ ਨੂੰ ਸੈਟ ਕਰੋ:

#myInput {
  background-image: url('/css/searchicon.png'); /* ਇਨਪੁਟ ਵਿੱਚ ਖੋਜ ਚਿੱਤਰ ਜੋੜੋ */
  background-position: 10px 12px; /* ਖੋਜ ਚਿੱਤਰ ਦਾ ਸਥਾਨ */
  background-repeat: no-repeat; /* ਚਿੱਤਰ ਨੂੰ ਮੁੜ ਨਾ ਕਰੋ */
  width: 100%; /* ਪੂਰੀ ਚੌੜਾਈ */
  font-size: 16px; /* ਫੋਂਟ ਦਾ ਕੇਵਾਲਾ ਵਧਾਓ */
  padding: 12px 20px 12px 40px; /* ਕੁਝ ਅੰਦਰਲਾ ਸ਼ਾਨਦਾਰ ਦੇਣਾ */
  border: 1px solid #ddd; /* ਹਰੇ ਬਰਾਬਰ ਦੀ ਹੱਡੀ */
  margin-bottom: 12px; /* ਇਨਪੁਟ ਬੈਕ ਨੂੰ ਕੁਝ ਅੰਦਰਲਾ ਜਗ੍ਹਾ ਦੇਣਾ */
}
#myTable {
  border-collapse: collapse; /* ਬਰਾਬਰ ਹੱਡੀਆਂ ਮਿਲਾਓ */
  width: 100%; /* ਪੂਰੀ ਚੌੜਾਈ */
  border: 1px solid #ddd; /* ਹਰੇ ਬਰਾਬਰ ਦੀ ਹੱਡੀ */
  font-size: 18px; /* ਫੋਂਟ ਦਰਜੇ ਵਧਾਓ */
}
#myTable th, #myTable td {
  text-align: left; /* ਟੈਕਸਟ ਵੱਲੋਂ ਸੂਚਕਾਂਕ ਲੱਭੇ ਜਾਣ */
  padding: 12px; /* ਅੰਦਰੂਨੀ ਪੈਡਿੰਗ ਜੋੜੋ */
}
#myTable tr {
  /* ਸਾਰੇ ਤਾਲਿਕਾ ਰੋਜ਼ਕ੍ਰਮ ਨੂੰ ਨੀਚੇ ਹੱਦ ਜੋੜੋ */
  border-bottom: 1px solid #ddd;
}
#myTable tr.header, #myTable tr:hover {
  /* ਤਾਲਿਕਾ ਹੱਦ ਅਤੇ ਮਾਉਸ ਹੋਰ ਹੋਣ ਤੇ ਗ੍ਰੇ ਪਿੱਛੋਕੜੀ ਕੀਤੀ ਜਾਵੇ */
  background-color: #f1f1f1;
}

ਤੀਜਾ ਪਗਲਾ - ਜਾਵਾਸਕ੍ਰਿਪਟ ਜੋੜੋ:

<script>
function myFunction() {
  // ਵਰਗੀਕਰਣ ਕਰੋ
  var input, filter, table, tr, td, i, txtValue;
  input = document.getElementById("myInput");
  filter = input.value.toUpperCase();
  table = document.getElementById("myTable");
  tr = table.getElementsByTagName("tr");
  // ਸਾਰੇ ਸਾਰੇ ਸਟੇਬਲ ਰੋਜ਼ਕ੍ਰਮ ਦੇ ਪਰਿਭਾਸ਼ਿਤ ਹੋਣ ਅਤੇ ਜੋ ਖੋਜ ਪ੍ਰਸ਼ਨ ਨਾਲ ਪਤਾ ਨਹੀਂ ਮਿਲਣ ਵਾਲੇ ਹੋਣ ਉਹ ਛੁਪਾ ਦਿੱਤੇ ਜਾਣ
  for (i = 0; i < tr.length; i++) {
    td = tr[i].getElementsByTagName("td")[0];
    if (td) {
      txtValue = td.textContent || td.innerText;
      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        tr[i].style.display = "";
      } else {
        tr[i].style.display = "none";
      }
    }
  }
}
</script>

ਸਿੱਧੇ ਮੋਹਰੇ ਨਾਲ ਪ੍ਰਯੋਗ ਕਰੋ

ਸੁਝਾਅ:ਜੇਕਰ ਤੁਸੀਂ ਹਰਫ ਦਰਜੇ ਨੂੰ ਮਹੱਤਵਪੂਰਣ ਮੰਨਣਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ toUpperCase()

ਸੁਝਾਅ:ਜੇਕਰ ਤੁਸੀਂ ਰਾਸ਼ਟਰ (ਸੂਚਕਾਂਕ 1) ਨੂੰ ਨਹੀਂ ਖੋਜਣਾ ਚਾਹੁੰਦੇ ਬਲਕਿ 'ਨਾਮ' (ਸੂਚਕਾਂਕ 0) ਤਾਂ tr[i].getElementsByTagName('td')[0] 更改为 [1]。

相关页面

教程:如何过滤/搜索列表