J'ai un formulaire que je soumets par ajax, et retourne un morceau mis à jour de html qui comprend un formulaire mis à jour que je veux soumettre via jquery.Comment puis-je avoir jquery attacher un comportement à un élément après l'avoir inséré
Le problème que j'ai est que la première fois que je clique sur soumettre l'événement est capturé par jquery et fonctionne très bien. Lorsque j'apporte une autre modification au formulaire sans actualisation, l'événement n'est pas capturé par jquery, mais effectue une demande de publication standard.
Comment puis-je avoir un comportement jquery attach à un élément après l'avoir inséré.
Voici mon code jquery.
$('.edit_clothing_product').submit(function(){
var productDiv = $(this).parent();
var action = $(this).attr('action');
var formData = $(this).serialize();
$.post(action, formData, function(data){
productDiv.replaceWith(data);
});
return false;
});
Voici le HTML (réduit) que je renvoie.
<div class="product">
<form action="..." class="edit_clothing_product">
<div class="color_combos">
...{form fields}
</div>
<a href=".../add_color_combo" class="add_color_combo">Add Color Combo</a>
<input name="commit" type="submit" value="Save" />
</form>
</div>
Comme quelqu'un de nouveau à jQuery (et JS), pourrais-je demander à l'évidence: * comment puis-je Rattachez le gestionnaire d'événements présenter .. * –
Mise à jour 'this' mot-clé à 'el' - à partir de l'apparence de ce * devrait * fonction. Faites-moi savoir si ce n'est pas le cas. Assurez-vous que la forme 'var 'est une référence correcte s'il vous plaît. –
Vous avez raison! Ne devrait pas avoir oublié que live() ne fonctionne pas avec soumettre. Juste supprimé ma réponse. Merci pour la contribution! – Frankie