Рейтинг:
25
Krunal Rohit
$(document).ready(function() {
$('#txtID').keyup(function(event) {
var searchKey = $(this).val().toLowerCase();
$("#grdEmployee tr td").each(function() {
var cellText = $(this).text().toLowerCase();
if (cellText.indexOf(searchKey) >= 0) {
$(this).parent().show();
}
else {
$(this).parent().hide();
}
});
});
});
Должен работать :)
Здесь
$("#grdEmployee tr td:nth-child(1)")
ты получишь первый.
td
из каждого ряда. Вот почему он работает для первой колонки. Удалять
:nth-child(1)
и проверь, работает он или нет.
[Обновление - после комментария]
$("#txtID").keyup(function(){
_this = this;
$.each($("#grdEmployee tbody").find("tr"), function() {
if($(this).text().toLowerCase().indexOf($(_this).val().toLowerCase()) == -1)
$(this).hide();
else
$(this).show();
});
});
-КРОНА
Richard Deeming
Закрыть - это покажет только те строки, где последняя ячейка в строке содержит текст, который должен быть сопоставлен. :)
Krunal Rohit
Решение обновлено.
-КРОНА
JOTHI KUMAR Member 10918227
спасибо Рохит его работа.предположим, если у меня есть какие-либо вопросы, я вернусь к вам спасибо всем.
Krunal Rohit
Рад, что смог помочь.
-КРОНА
JOTHI KUMAR Member 10918227
Эй Рохит выше скрипта его работа, но он также ищет столбец.но мне нужны только данные, а не столбец
Krunal Rohit
Данные находятся внутри столбца, верно ?
-КРОНА
JOTHI KUMAR Member 10918227
мне нужно искать внутри столбца но он будет искать в том числе столбец и еще один вопрос у меня есть 20 страниц но он будет искать только текущую страницу как решить эти две проблемы
Krunal Rohit
Смотрите, подкачка скрывает и отображает только выбранные записи. Решение, которое я предоставил, не будет работать для этого.
Я бы посоветовал вам использовать datatable.js за это. Погуглите об этом.
И я не получил этого: "мне нужно искать внутри столбца, но он будет искать в том числе столбец"
-КРОНА
Рейтинг:
2
Richard Deeming
Что-то вроде этого должно сработать:
$(document).ready(function() {
$('#txtID').keyup(function(event) {
var searchKey = $(this).val().toLowerCase();
$("#grdEmployee tr").each(function() {
var isMatch = $(this).children("td, th").is(function(){
var cellText = $(this).text().toLowerCase();
return cellText.indexOf(searchKey) >= 0;
});
if (isMatch) {
$(this).show();
}
else {
$(this).hide();
}
});
});
});
Это использует
jQuery is
функция[
^] чтобы проверить, содержит ли какой-либо из дочерних элементов указанный текст.
JOTHI KUMAR Member 10918227
жаль, что Ричард не будет работать к сожалению
Richard Deeming
Что значит "не работает" означает? Помните, я не могу видеть ваш экран. :)
JOTHI KUMAR Member 10918227
я получил ошибку в строке var ismatch в приведенном выше скрипте здесь я поставил предупреждение оно не сработает
Richard Deeming
Попробуйте изменить строку на:
var isMatch = $(this).children(...
(С помощью $(this)
вместо того чтобы просто this
.)