Как выполнить другое действие после сгенерированного ajax с jQuery? - PullRequest
0 голосов
/ 28 января 2010

У меня эта функция ajax с jquery. (http://pastie.org/798788)

Выводы следующие.

* +1007 *

Теперь я пытаюсь добавить еще один ajax с class = "todo". Однако, когда я попробовал это для тестирования. Это не насторожило. Выполняет функцию php.

$(".todo").click(function(){
    event.preventDefault();
    alert("hei");

}); 

Я не уверен, почему. Это потому, что он создан ajax?

Это как-то связано с привязкой? Как я могу заставить это работать?

Я использую CodeIgniter.

Другие php функции здесь . (* * тысяча двадцать-один

Ответы [ 3 ]

2 голосов
/ 28 января 2010

Похоже, вам нужно использовать привязку событий live в стиле и называть объект события как параметр для обработчика щелчков.

$(".todo").live('click', function(event) {
    event.preventDefault();
    ...
});
1 голос
/ 28 января 2010

Вам нужно будет использовать live событие:

$(".todo").live('click', function() { // <- Extend the "click" event to every .todo element created in the future
    event.preventDefault();
    alert("hei");
}); 
0 голосов
/ 28 января 2010

Не уверен, что я полностью понимаю, как все происходит. Но если вы вставляете ссылки с классом 'todo' после того, как вы выполнили функцию 'bind', вам нужно либо: а) Повторно вызвать функцию привязки (первая привязка). б) Используйте функцию jquery live, чтобы вы автоматически подключались к любым новым классам 'todo'.

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