Ashraf Khalifah Ответов: 1

Показать заголовок таблицы после поиска на jQuery


привет ,
У меня есть текстовое поле и gridview в asp.net страница
&ЛТ;АСП:текстовое поле с ID="текстовый поиск по умолчанию" атрибут runat="сервер"и GT;
&ЛТ;в ASP:GridView в идентификатор="ГРД" атрибут runat="сервер"и GT;
тоже
Я использую этот код Jquery для поиска в grd по txtSearch



$('input[id$=txtSearch]').keyup(функция () {
_this = это;

$.each($("[id*=grd] tbody").find("tr"), функция () {
если ($(это).текст().столоверчением().метод indexOf($(что).функция val().столоверчением()) == -1)
$(это).скрыть();
еще
$(это шоу();
});

})



Я уже подключаю grd по datatable и все работает
Но !!!
после поиска очень хорошо
заголовок grd-hide
И
Вопрос :
Как можно выполнить поиск по записи в текст txtSearch и сохранить отображение строки заголовка ?
спасибо за все.

Что я уже пробовал:

Я попытался сделать поиск по циклу в grd
и начните цикл с индекса строки =0
но я не могу решить эту проблему
потому что я не знаю правильного пути
спасибо

1 Ответов

Рейтинг:
0

Vincent Maverick Durano

Я забыл, как автоматически генерируемая HTML-разметка gridview визуализируется в браузере, но вы можете попробовать избежать первой <tr> из-за стола. Ваш код теперь будет выглядеть примерно так:

$('input[id$=txtSearch]').keyup(function () {
	_this = this;

	$.each($("[id*=grd]").find("tr:not(:first)"), function () {
		if ($(this).text().toLowerCase().indexOf($(_this).val().toLowerCase()) == -1)
			$(this).hide();
		else
			$(this).show();
	});

});


Ключ здесь заключается в использовании селектора jQuery tr:not(:first) чтобы предотвратить скрытие первого ряда.

Вы также можете попробовать посмотреть плагин QuickSearch, как показано в этой статье здесь: https://www.aspsnippets.com/Articles/Implement-Client-Side-search-in-GridView-using-jQuery-in-ASPNet.aspx[^]