Portekoi Posté 9 Novembre 2009 Posté 9 Novembre 2009 Bonjour, J'ai un menu select "zone" et un menu select "agence". La liste des agences dépend de la zone choisie. Comment faire, avec jQuery, pour que la liste "agence", soit rechargée dynamiquement dès que l'on choisit une zone? Mon fichier contenant faisant la requête se nomme "GetInfo.asp" et attend une variable "zone". Je m'arrache un peu les cheveux sur JQuery Portekoi
captain_torche Posté 9 Novembre 2009 Posté 9 Novembre 2009 Imaginons que "zone" soir l'id de ton premier select, que "agence" soit l'id du second, et que ton fichier getinfo génère automatiquement la nouvelle liste (agence donc), au format HTML. Tu ferais quelque chose du genre : $('#zone').change(function() { var zone = $('#zone').val(); $.get( 'GetInfo.aspx', {zone: zone}, function(data) { $('#agence').replaceWith(data); } );}); Comme d'hab, je code "en aveugle", y'a sans doute des erreurs qui se sont glissées ça et là, mais l'idée est là.
Portekoi Posté 9 Novembre 2009 Auteur Posté 9 Novembre 2009 Re, Je dois avoir un souci de bib parce que même en mettant simplement ca: $('#zone').change(function() { alert('coucou'); }); il ne se passe rien du tout C'est bon, j'avais zappé le début : $().ready(function() { $('#zone').change(function() { var zone = $('#zone').val(); $.get( 'GetInfo.asp', {zone: zone}, function(data) { $('#aggest').replaceWith(data); } ); });}); Merki Portekoi
captain_torche Posté 9 Novembre 2009 Posté 9 Novembre 2009 Pas de quoi Par contre, je viens d'apprendre un truc en lisant ton code : je croyais qu'il était nécessaire de faire $(document).ready().
Portekoi Posté 10 Novembre 2009 Auteur Posté 10 Novembre 2009 Le code exact avec les variables : <script language="javascript">$().ready(function() { $('#zone').change(function() { var zone = $('#zone').val(); $.get( 'GetInfo.asp', {'zone': zone, 'action' : 'agence'}, function(data) { $('#aggest').replaceWith(data); } ); });});</script>
Portekoi Posté 10 Novembre 2009 Auteur Posté 10 Novembre 2009 Bon, une suite à ma demande : Le formulaire ci dessus me liste des comptes et autres informations. Au bout de chaque ligne se trouve un bouton de formulaire. Comment faire en sorte que lors du click sur l'un des boutons, des informations soient envoyées à ma page 'traitement.asp'? Avec Jquery, je sais faire se genre de chose pour un element unique mais là, le bouton n'a pas le même "id"... Ca doit être tout simple mais je ne trouve pas Portekoi
captain_torche Posté 10 Novembre 2009 Posté 10 Novembre 2009 Il faut que tu trouves le moyen de cibler tous les boutons. Imaginons qu'ils ont tous la même classe (.bouton), et un ID différent (que tu veux envoyer à ta page de traitement). Tu ferais quelque chose du genre : $('.bouton').each(function() { var id = $(this).attr('id'); $.get( 'traitement.asp', {id: id}, function(data) { /* Tes bidouilles ici */ } );});
Portekoi Posté 10 Novembre 2009 Auteur Posté 10 Novembre 2009 Ca se déclenche quand je rafraichis la page, je dois mettre une vérification avant? C'est bon, j'ai changé le .each par .click Nickel
Portekoi Posté 10 Novembre 2009 Auteur Posté 10 Novembre 2009 Dernier point : j'essaie de cacher la ligne du tableau. Pour cela, j'ai mis un 'ID' sur mon tr. En faisant cela, il ne se passe rien : $('.bouton').click(function() { if (confirm('Êtes vous sur de vouloir archiver cette garantie?')){ var id = $(this).attr('id'); var td_id = 'TD' + id; $.get( 'GetInfo.asp', {id: id, action : 'archive'}, function(data) { } ); $('#' + td_id).toggle(400); };});
captain_torche Posté 10 Novembre 2009 Posté 10 Novembre 2009 Essaye de renommer ta variable en TR + id, si c'est pour un tr Et sinon, à ta place, je mettrai la fonction de masquage dans la fonction d'archivage.
Portekoi Posté 10 Novembre 2009 Auteur Posté 10 Novembre 2009 Ca a marché en faisaint un trim sur ma variable composant la valeur de l'ID. bizarre... comme si jquery faisait un trim des ID...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant