sélectionner les éléments dom après html a été inséré dans une page avec ajax
J'ai créé une requête ajax onglet de navigation avec le html étant inséré dans la page. le code ressemble à ceci:
$.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...donc, je joins mon balise dans mon code html. Maintenant, j'ai besoin de sélectionner des éléments du dom à partir de l'insertion de html, mais je ne peux pas. J'ai le code suivant:
<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>
Ici, je générer l'sélectionnez options dynamiquement. Lorsque j'essaie de le faire:
$('#chapters-select').change(function(){
alert('changed');
});
il ne fonctionne pas.
Comment puis-je utiliser javascript après je ajouter le code html via ajax ?
Semble bien fonctionner pour moi: jsfiddle.net/fyg6m Où en êtes-vous liant le gestionnaire d'événement?
Il a écrit qu'il est l'ajout de contenu avec
Sans doute, mais qui implique que les éléments sont sélectionnés avant ils ont été insérés par l'Ajax, ce qui est contraire à ce titre. Néanmoins, je suis d'accord avec vous.
Pourquoi êtes-vous de l'ouverture et de la fermeture, le moteur PHP?
Il a écrit qu'il est l'ajout de contenu avec
ajax
donc ça doit être un délégué d'événement de problème.Sans doute, mais qui implique que les éléments sont sélectionnés avant ils ont été insérés par l'Ajax, ce qui est contraire à ce titre. Néanmoins, je suis d'accord avec vous.
Pourquoi êtes-vous de l'ouverture et de la fermeture, le moteur PHP?
OriginalL'auteur Mythriel | 2012-02-27
Vous devez vous connecter pour publier un commentaire.
Utilisation délégué d'événement comme
on
pour la version 1.7+Pour augmenter les performances au lieu de
body
vous devez écrire le plus proche de la statique(Pas encore ajouté dynamique avec ajax ou javascript) d'un élément qui contient "chapters-select
Si vous utilisez une version plus ancienne de
jQuery
de choisir la méthode appropriée par le tableau suivant:on
docs:$.ajax
.je vous remercie. il est de travail. je ne comprends pas pourquoi ça ne marchait pas avant, mais je recherche c'
habituellement, Il est recommandé de faire les choses à la fois et dans un seul endroit.
Lire les docs que j'ai ajouté et référencé, Il devrait répondre à toutes vos questions et de vos pensées.
d'accord. SEC.
OriginalL'auteur gdoron
Exécuter cette fois, après la première charge.
C'est l'équivalent de @gdoron réponse, mais est compatible avec les versions de jQuery âgés de plus de 1.7
OriginalL'auteur wheresrhys