Фильтр по таблице, определенного слова
Есть код,
<script type="text/javascript"> function filter2 (phrase, _id){ var words = phrase.value.toLowerCase().split(" "); var table = document.getElementById(_id); for (var r = 1; r < table.rows.length; r++){ var cellsV1 = table.rows[r].cells[1].innerHTML.replace(""); var cellsV = [cellsV1].join(""); var displayStyle = 'none'; for (var i = 0; i < words.length; i++) { if (cellsV.toLowerCase().indexOf(words[i])>=0) displayStyle = ''; else { displayStyle = 'none'; break; } } table.rows[r].style.display = displayStyle; } } </script> Таблица <div class="">Сотировка таблицы</div> <input name="filt" onkeyup="filter2(this, 'product-feature')" style="width:350px;" type="text" /> <table class="table" id="product-feature" > <thead> <tr><th data-type="number">ID</th><th> Города</th></tr> </thead> <tbody> <tr><td>1</td><td>Миша</td></tr> <tr><td>2</td><td>Саня</td></tr> <tr><td>3</td><td>Машина</td></tr> <tr><td>4</td><td>Самолет</td></tr> <tr><td>5</td><td>Обруч</td></tr> </tbody> </table> Задача, при вводе полу слова "Сам", оставалось ток срока Самолет. Если ввести "обруч" и тд, то нечего бы не происходило. |
Сейчас на данный момент ищет все сподряд.
|
Фильтрация строк таблицы
aledavydkin,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script type="text/javascript"> function filter2(phrase, _id) { var words = phrase.value; var show = [].filter.call(document.querySelectorAll("#" + _id + " tbody tr"), function(tr) { var text = tr.cells[1].textContent; tr.style.display = text.indexOf(words) == 0 ? "" : "none"; return text.indexOf(words) == 0 }); if (!show.length)[].forEach.call(document.querySelectorAll("#" + _id + " tbody tr"), function(tr) { tr.style.display = "" }) }; </script> </head> <body> <div class="">Фильтрация строк таблицы</div> <input name="filt" onkeyup="filter2(this, 'product-feature')" style="width:350px;" type="text" /> <table class="table" id="product-feature" > <thead> <tr><th data-type="number">ID</th><th> Города</th></tr> </thead> <tbody> <tr><td>1</td><td>Миша</td></tr> <tr><td>2</td><td>Саня</td></tr> <tr><td>3</td><td>Машина</td></tr> <tr><td>4</td><td>Самолет</td></tr> <tr><td>5</td><td>Обруч</td></tr> </tbody> </table> </body> </html> |
Задача, при вводе полу слова "Сам", оставалось ток срока Самолет. Если ввести "обруч" и тд, то нечего бы не происходило.
|
aledavydkin,
смотрите пост №3 снова |
Часовой пояс GMT +3, время: 00:58. |