jquery je comprends pas ce qui se passe ;-( - HTML/CSS - Programmation
MarshPosté le 06-05-2013 à 20:18:04
Bonjour
J'ai un souci dans un script en jquery.
J'ai une fonction qui permet de mettre à jour un <select> en fonction d'un input. Cette fonction marche impec !
Code :
$('#id_produit_groupe').change( function(){
// affichage des produits en fonction du groupe de produit
$.ajax({
type : 'GET',
url : 'controller/mes_produits/getListeProduit.php' , // url du fichier de traitement
data : {id_produit_groupe:$(this).val()} , // données à envoyer en GET
beforeSend : function() {$('#waiting_pseudo_produit').show(); }, // faire apparaitre l'image d'attente
success : function(data){ // traitements JS à faire APRES le retour d'ajax-search.php
$('#id_produit').html(data); // affichage des résultats dans le bloc
$('#waiting_pseudo_produit').hide();
}
});
});
J'ai ensuite un peu plus loin dans le script, un trigger qui déclenche cette fonction. Le trigger se déclenche bien et met donc à jour la liste déroulante.
Code :
$('#id_produit_groupe').trigger( "change" );
Je voudrais maintenant mettre en "selected" une certaine valeur dans cette liste. Je fais comme ça :
Code :
$('#id_produit [value="'+data.id_produit+'"]').attr('selected', true); // marche pas !
Et ça ne marche pas. La liste se met à jour , mais le "selected" n'est pas pris en compte. Je pense (mais pas sur , d'où ce post) que tout ça est de l'asynchrone, et que mon pb vient de là. Comment puis je dire au script de mettre le "selected" uniquement aprés l'exécution du trigger ? La syntaxe pour mettre le "selected" n'est pas en cause (je l'ai fait en dur pour vérifier et ça fonctionne).
Merci pour vos suggestions , car je ne suis pas tres tres fort en jquery.
Marsh Posté le 06-05-2013 à 20:18:04
Bonjour
J'ai un souci dans un script en jquery.
J'ai une fonction qui permet de mettre à jour un <select> en fonction d'un input. Cette fonction marche impec !
J'ai ensuite un peu plus loin dans le script, un trigger qui déclenche cette fonction. Le trigger se déclenche bien et met donc à jour la liste déroulante.
Je voudrais maintenant mettre en "selected" une certaine valeur dans cette liste. Je fais comme ça :
Et ça ne marche pas. La liste se met à jour , mais le "selected" n'est pas pris en compte. Je pense (mais pas sur , d'où ce post) que tout ça est de l'asynchrone, et que mon pb vient de là. Comment puis je dire au script de mettre le "selected" uniquement aprés l'exécution du trigger ? La syntaxe pour mettre le "selected" n'est pas en cause (je l'ai fait en dur pour vérifier et ça fonctionne).
Merci pour vos suggestions , car je ne suis pas tres tres fort en jquery.
Dominique