JQuery 1.3.1 не находит динамически сгенерированные строки - PullRequest
0 голосов
/ 13 марта 2009

Я только что установил в ASP.NET MVC RC2, а также с помощью библиотеки JQuery 1.3.1.
До того, как я использовал библиотеку 1.2.6.
Наше приложение прекрасно работает под этой библиотекой.
Но теперь у меня странная проблема.
У нас есть сеточное представление, которое мы создаем в результате вызова AJAX.
Получив результат, мы добавляем новые строки в таблицу путем клонирования скрытой строки.

Сгенерированный HTML из JQuery помещает дополнительные параметры в теги. Они имеют вид JQuery12345678 = "null". Все они имеют одинаковые имена. В заголовке таблицы есть флажок, который выбирает / отменяет выбор всех строк таблицы. Это путем перебора строк таблицы.

$("#selectAllCheckbox").click(function() {
    var checked = this.checked;
    $("#dgNewTasks tbody tr").find(':input[type="checkbox"]').each(function() {
        this.checked = checked;
    });
});

Теперь при использовании новой библиотеки флажок больше не устанавливается. Я использовал IE Developer Tools для проверки HTML. Если я удалю параметр JQuery12345678 = "null" из моих строк. Работает нормально.

Может кто-нибудь сказать мне, что я должен делать?

Ответы [ 3 ]

1 голос
/ 13 марта 2009

Нам нужно увидеть ваш HTML. Это может осветить проблему. А пока ваш код может быть значительно упрощен:

$("#selectAllCheckbox").click(function() {
    var checked = this.checked;
    $("#dgNewTasks tbody tr :checkbox").attr("checked", checked);
});
0 голосов
/ 02 мая 2010

Похоже, вам нужно использовать .live вместо .click:

$("#selectAllCheckbox").live(function() {
    var checked = this.checked;
    $("#dgNewTasks tbody tr").find(':input[type="checkbox"]').each(function() {
        this.checked = checked;
    });
});
0 голосов
/ 02 мая 2010

это не работает, потому что вы прикрепляете обработчик событий (например, click()) в обработчик событий ready(), и в этот момент нет динамически созданных строк. поэтому присоедините click() или любые другие обработчики событий к динамически создаваемым строкам после их создания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...