2009-01-10 11 views
3

Je suis un peu nouveau quand il s'agit de programmation, mais j'essaie d'apprendre. Ce que je dois faire pour mon site est d'avoir 2 ou 3 menus déroulants liés de sorte que lorsque je sélectionne un élément du premier, le second se rafraîchira avec d'autres options. J'ai trouvé un moyen de le faire en utilisant java mais je n'arrive pas à le faire avec la partie refresh div. J'ai cherché prototypejs/updater mais c'est un peu sur ma tête et je n'arrive pas à le lier avec le javascript utilisé pour les menus déroulants ...Listes déroulantes liées et charge div

Donc, si quelqu'un peut dire comment je peux lier deux, peut-être 3 menus déroulants et après si je clique sur une option du dernier menu faire un div de la page rafraîchir avec un autre contenu s'il vous plaît aider :)

+0

Utilisez-vous le cadre prototype ou un autre cadre ou aucun cadre? – AnthonyWJones

Répondre

2

Pas 100% sûr de ce que vous cherchez - mais je pense que cela devrait vous arriver à moins une partie de la façon suivante:

http://remysharp.com/2007/09/18/auto-populate-multiple-select-boxes/

C'est un plugin jquery __gVirt_NP_NN_NNPS<__ pour relier sele Ct boîtes ensemble, en utilisant ajax pour charger les données pour remplir la prochaine case de la chaîne en fonction de la valeur sélectionnée dans le précédent.

Vous aurez toujours besoin de lier la dernière boîte avec la div - mais vous devriez être capable de le faire vous-même avec une méthode similaire - voir la documentation de jquery ajax.

http://docs.jquery.com/Ajax

2

Essayez une recherche sur google pour sélectionner les boîtes dynamiques, il y a beaucoup d'exemples, choisissez celui moins compliqué qui correspond le mieux à vos connaissances. Le principe est de lier une fonction à l'événement "onchange" que la boîte de sélection déclenche lorsqu'un élément est sélectionné.

En supposant que cette case de sélection:

<select id="select1" name="option"> 
</select> 

le fragment javascript est:

var sel1 = document.getElementById("select1"); 
sel1.onchange = function() { 
    //do whatever you want 
}; 

Pour la première et la deuxième sélection, la fonction se chargera d'autres options Sélectionnons, alors que dans le troisième cas, il montrera votre div