элементы jquery load / get и dom не запускаются ...? - PullRequest
1 голос
/ 05 февраля 2011

Я загружаю простую страницу, используя:

$.get('../admin/login.php', function(data) { $('#box-contents').html(data); });

Теперь на этой странице login.php у меня есть поле ввода, и в моем глобальном файле JavaScript у меня есть событие, которое срабатывает на .change() - но это не увольнение!?

Это потому, что я загрузил этот файл на страницу, чтобы jquery не знал, что он там сейчас?Нужно ли мне также включать мой глобальный файл JS на страницу login.php?

Любая помощь по этому вопросу будет высоко ценится

1 Ответ

2 голосов
/ 05 февраля 2011

вместо .get(), используйте .load(), как это было предназначено для этой цели.Также для вашего события .change() вам нужно либо присоединить его после того, как элемент существует (что можно сделать в вашем обратном вызове ниже), либо вы можете использовать .live(), чтобы прикрепить событие к любому текущему или будущему элементу DOM.

Метод обратного вызова

$('#box-contents').load('../admin/login.php', function() {
    $('input').change(function() {
        //do stuff on change
    });
});

Живой метод

$('input').live('change', function() {
    //do stuff on change
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...