چگونه جدول را فیلتر/جستجو کنیم
- صفحه قبلی فیلتر کردن لیست
- صفحه بعدی فیلتر کردن عناصر
آموزش نحوه استفاده از JavaScript برای ایجاد جدولهای قابل فیلتر کردن.
فیلتر کردن جدول
چگونه از JavaScript برای جستجوی دادههای خاص در جدول استفاده کنیم.
نام | کشور |
---|---|
Alfreds Futterkiste | Germany |
Berglunds snabbkop | سوئد |
Island Trading | UK |
Koniglich Essen | Germany |
Laughing Bacchus Winecellars | Canada |
Magazzini Alimentari Riuniti | Italy |
North/South | UK |
Paris specialites | France |
توليد جدول قابل فیلتر كردن
مرحله اول - اضافه كردن HTML:
<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>
مرحله دوم - اضافه كردن CSS:
تنظيم استايل ورودی و جدول:
#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; }
مرحله سوم - اضافه کردن JavaScript:
<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()
。
توجه:اگر بخواهید به جای 'نام' (شاخص 0) به دنبال کشور (شاخص 1) بگردید، لطفاً tr[i].getElementsByTagName('td')[0]
به [1] تغییر دهید.
صفحات مرتبط
- صفحه قبلی فیلتر کردن لیست
- صفحه بعدی فیلتر کردن عناصر