JQuery AJAX помочь - PullRequest
       9

JQuery AJAX помочь

1 голос
/ 19 августа 2010

В данный момент я работаю с некоторым ajax, и результат успешного ajax заключается в том, что на страницу добавляется еще немного контента на лету. Моя проблема в том, что добавляется на лету, похоже, что я не могу прикрепить какие-либо события к добавляемым элементам.

Поток того, что происходит, заключается в том, что пользователь выбирает опцию из выпадающего списка, значение этого выбора отправляется функции php, которая затем возвращает еще немного HTML на страницу, которая добавляется к div на странице.

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

Можно ли обойти это, чтобы я мог запустить событие click для HTML, которое добавляется после успешного возврата первого запроса ajax.

$(document).ready(function() {

//customise the select menus
$('#customselector').SelectCustomizer();;

$('.career_select .selectitems').click(function(){
    var selectedCareer = $(this).attr('title');
    $.ajax({
        type: 'POST',
        url: '/roadmap/step_two',
        data: 'career_choice='+selectedCareer+"&ajax=true&submit_career=Next",
        success: function(html){
            $('.hfeed').append(html);
            $('#grade_choice').SelectCustomizer();
          }
    });
});

$('#grade_choice_options .selectitems').click(function(){
    var selectedGrade = $('#grade_choice_customselect').val();
    alert(selectedGrade);
})

}); * * 1 010

Ответы [ 2 ]

4 голосов
/ 19 августа 2010

Используйте live () вместо click () напрямую:

$('.career_select .selectitems').live('click', function() { ....

live () по существу подключает любые новые элементы, которые соответствуют, которые добавляются впоследствии.

0 голосов
/ 19 августа 2010

Попробуйте использовать этот плагин:

http://brandonaaron.net/code/livequery/docs: Live Query использует всю мощь селекторов jQuery, автоматически связывая события или вызывая обратные вызовы для сопоставленных элементов, даже после загрузки страницы иDOM обновлен.

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