Stworzyłem nawigacji zakładki ajax z wstawionym html na stronę. kod wygląda następująco:wybierając elementy dom po html został wstawiony na stronie z ajaxem
$.ajax({
type: 'POST',
url: 'main/ajaxjson/load_course_details',
data: {page : which, course_id: id},
success: function(home){
$('#ajax-content ').hide();
$('#ajax-content').empty().append(home);
$('#ajax-content').fadeIn();
}
});
ok ... więc dołączam mój znacznik do mojego html. Teraz muszę wybrać elementy dom z wstawionego html, ale nie mogę. Mam następujący kod:
<a href="javascript:;" class="light-button">Next</a>
<select id="chapters-select">
<?php foreach ($chapters as $chapter) : ?>
<option value="<?php echo $chapter->id; ?>"><?php echo $chapter->title; ?></option>
<?php endforeach; ?>
</select>
Tutaj generuję dynamicznie wybrane opcje. Kiedy próbuję to zrobić:
$('#chapters-select').change(function(){
alert('changed');
});
to nie działa. Jak mogę używać javascript po dodaniu html przez ajax?
wydaje się działać dobrze dla mnie: http://jsfiddle.net/fyg6m/ Gdzie jesteś wiążących zdarzenie treser? –
@FelixKling. Napisał, że dodaje treść z 'ajax', więc musi to być wydarzenie związane z delegatem. – gdoron
@gdoron: Prawdopodobnie, ale to by oznaczało, że elementy zostały wybrane * przed * zostały wstawione przez Ajax, co jest sprzeczne z tytułem. Niemniej jednak zgadzam się z tobą. –