JQuery добавляет сообщение в div, если таблица пуста после нажатия кнопки поиска - PullRequest
0 голосов
/ 03 декабря 2011

У меня есть страница поиска, которая отображает результаты на той же странице, используя таблицу под полями поиска. Я хотел бы вернуть сообщение, если нет результатов поиска.

Я знаю, как это сделать, добавив текст, но сейчас проблема в том, что мой код обнаруживает пустую таблицу при загрузке страницы (и отображает сообщение «нет данных» до того, как пользователь выполнит поиск). Я бы предпочел показывать текст только после нажатия кнопки поиска.

Вот что у меня есть:

$("#account-grouping table tbody").each(function() {
if($.trim($(this).text()).length == 0)
{
var text = $.trim($(this).text());
text += "There was no data returned.";

$(".ac-message").text(text);
}
});

Как видите, я проверяю пустую таблицу, а затем выскакиваю сообщение в div с именем .ac-message. Однако я бы очень хотел прикрепить все это к событию click кнопки поиска.

1 Ответ

1 голос
/ 03 декабря 2011

Вам необходимо поместить свой код проверки пустоты в функцию обратного вызова, которая завершается после завершения поиска.

var updateSearchResults = function(data) {
    if(data.length) { // depending on what format your data
                      // comes back in you may need a different test
        // Do something to populate your table
    } else {
        // Show your empty message
    }
};
$.get("/your/search/path", { "s": userSearch }, updateSearchResults);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...