Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Фильтр таблиц (https://javascript.ru/forum/dom-window/23010-filtr-tablic.html)

ksa 03.12.2011 17:36

Georgy, я к тому, что если форма не отправляется как нужно - значит вёрстка негодится.

Georgy 03.12.2011 17:59

АААА! Я НАШЕЛ!
Оказывается, проблема была в этой строчке
NewData[i].name = 'Det['+i+']';

Вернее дело в квадратных скобках 'Det['+i+']'. Если их убрать, то все работает:victory: .

UJKJDF 05.08.2015 18:18

нужен поиск по таблице, чтобы при наборе в ячейке поиска таблица автоматом фильтровала все соответствующие позиции проверяя по всем ячейкам.

рони 05.08.2015 19:03

поиск в таблице и скрытие строк
 
UJKJDF,
если ненужно скрытие убрать строки 42 - 44
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>demo</title>
 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <style type='text/css'>
    body {
    font-family: Arial, Helvetica;
    font-size: 12px;
}
table {
    width: 500px;
}
tr {
    height: 20px;
}
.guide {
    text-decoration: underline;
    text-align: center;
}
tbody tr:nth-of-type(2n + 1) {
    color: #fff;
    background: #666;
}
tbody tr:nth-of-type(2n) {
    color: #666;
}
.hot {
    border: 1px solid #f00;
    background-color: #FFD480;
    color: #000000;
}
  </style>
<script>
$(function() {
    $("input#search").on("input", function() {
        var text = this.value.toLowerCase();
        $("tr:not(.guide) td").removeClass("hot").each(function(i, obj) {
            if ($(obj).text().toLowerCase().indexOf(text) > -1 && text) $(obj).addClass("hot")
        });
        $("tr:not(.guide)").show().filter(function() {
            return text && !$(".hot", this).length
        }).hide()
    })
});
</script>


</head>
<body>
  <input id="search" type="text"></input>

<table>
    <tr class="guide">
        <td>First Name</td>
        <td>Last Name</td>
        <td>City</td>
        <td>State</td>
    </tr>
    <tr>
        <td>Manix</td>
        <td>Bolton</td>
        <td>Merizo</td>
        <td>Michigan</td>
    </tr>
    <tr>
        <td>Azalia</td>
        <td>Gallegos</td>
        <td>Plainfield</td>
        <td>Michigan</td>
    </tr>
    <tr>
        <td>Michael</td>
        <td>Shaw</td>
        <td>Rawlins</td>
        <td>New Hampshire</td>
    </tr>
    <tr>
        <td>Matthew</td>
        <td>Parker</td>
        <td>Chino Hills</td>
        <td>Michigan</td>
    </tr>
</table>

</body>


</html>

UJKJDF 06.08.2015 16:06

Спасибо! попробую доработать,
При наборе текста в поиске надо чтоб находил все варианты
например
/Розетка СП Мира с заземл керам/
это в одной ячейке
набираю в поиске
роз(пробел)мира(пробел)сп(п обел)бел
в любой последовательности
надо чтобы находило.

рони 06.08.2015 16:58

UJKJDF,
RegExp и regexp.test - изучить и добавить вместо indexOf

UJKJDF 06.08.2015 22:10

<script>
$(function() {
$("input#search").on("input", function() {
var text = this.value.toLowerCase();
$("tr:not(.guide) td").removeClass("hot").each(function(i, obj) {
if ($(obj).text().toLowerCase().indexOf(text) > -1 && text) $(obj).addClass("hot")
});
$("tr:not(.guide)").show().filter(function() {
return text && !$(".hot", this).length
}).hide()

})
});
</script>

indexOf нашел
только в этом совсем не понимаю
разобрался только с toLowerCase
(подскажите новичку)

UJKJDF 07.08.2015 12:45

Сам не смогу.
скинь пожалуйста!
посмотрю что получилось.

UJKJDF 12.08.2015 17:29

Есть плагин???


Часовой пояс GMT +3, время: 09:07.