19 07 2002 à 07:57 |
Salut, J'ai du mal en JS (c'est pas une nouveauté) et j'aurais besoin de petit coup de main si possible. J'explique mon cas J'ai deux tags <select> : le premier conditionne ce qui se trouve dans le suivant et je voudrais que si je sélectionne par exemple "Films" dans la première je me retrouve avec "Les tontons flingueurs" et "Star Wars" dans la deuxième et que si je sélectionne "Cuisine anglaise" dans le premier alors le contenu ma liste se transforme en "Pudding" et "Jelly". Je pense que c'est possible, mais jusque là je n'arrive à rien de rien. Les tableaux en JS (ça doit être la clé) j'y pige rien Pour ce qui est de la génération du code JS elle se fera en PHP mais ça c'est pas un problème... Merci. |
|
19 07 2002 à 08:04 |
Ben en fait déjà cela dépend de ton style de changement de contenu : - avec rechargement de la page - sans rechargement de la page Si tu accepte un rechargement de la page à chque modification dans la liste 1. Il te suffit de placer un OnChange="..." dans lequel tu demande l'envoi de ton formulaire. Ainsi lors du nouveau parsing de ta page, tu as à ta disposition la valeur sélectionnée de la liste 1 et tu peux interroger ta base de données (si tu en as une) pour récupérer les bonnes informations pour la liste 2. Si tu n'accepte pas le rechargement ben c'est beaucoup plus dur en fait. Il te faut récupérer toute les valeurs dans un tableau et suivant l'index sélectionné dans le liste 1, n'afficher que les valeurs correpondantes dans la liste 2. Tu devrais pouvoir te débrouiller avec ça en utilisant un tableau à double entrées avec en entrée 1 l'index de la liste 1 et en entrée 2 la liste des valeurs correspondantes. |
|
19 07 2002 à 08:08 |
En fait c'est sans rechargement, du moins pour le moment, parce qu'avec je sais le faire mais c'est pas hyper pratique quoi... Enfin sinon faute de mieux... |
|
19 07 2002 à 08:12 |
Déjà pour le tableau tu peux travailler comme ça MyArray = new Array(3); MyArray [0] = new Array(3); MyArray [1] = new Array(4); ... MyArray [0][0]="Valeur 1"; MyArray [0][1]="Valeur 2"; MyArray [0][2]="Valeur 3"; MyArray [1][0]="Valeur 1"; MyArray [1][1]="Valeur 2"; MyArray [1][2]="Valeur 3"; MyArray [1][3]="Valeur 4"; Lorsqu'un évènement onChange arrive sur ta liste 1, tu peux récupérer l'index de la valeur sélectionnée. Cette valeur d'index correspond en fait à la première valeur du tableau. Il ne te reste plus donc qu'a réaffiché les valeurs correspondantes. |
|
19 07 2002 à 08:15 |
Je vais tester ça... Aïe ça va faire mal... |
|
19 07 2002 à 08:17 |
pour deux menu déroulant dépendant: http://www.akoter.com/scripts/nav17.php?cat=nav... mais bon je ne sais pas si ce être utile [o0o] |
|
19 07 2002 à 08:20 |
C'est ce qu'il me faut ^^ Je vais étudier le code et me l'adapter Thx à tous Cob : désolé je t'ai appeauté pour rien |
|
19 07 2002 à 08:20 |
Ouais voila c'est exactement ça. Angel, regarde le code et ça t'aidera je pense. o0o t'es un chef Arf j'étais en train de t'écrire un bout de code. J'ai plutôt intérêt à revoir ma liste de liens moi |
|
19 07 2002 à 08:22 |
merci, mais il faut remercier mes pseudos-favoris [o0o - ok j'arrête de jouer avec // { m } ] |
|
19 07 2002 à 08:28 |
Petite question supplémentaire : on peut définir la valeur d'un variable JS n'importe où ou bien il faut se trouver dans le bon bout de code ?? |
|
19 07 2002 à 08:38 |
je rip :http://www.laltruiste.com/coursjavascript/variable_portee.html Dans le langage Javascript, les variables peuvent être globales ou locales. Une variable globale est déclarée en début de script et est accessible à n'importe quel endroit du programme. Une variable locale est déclarée à l'intérieur d'une fonction et n'est utilisable que dans la fonction elle-même. var int = 0 //Variable globale. function() { var i = 1; //Variable locale. ... } |
|
19 07 2002 à 08:39 |
De la boulette atomique Merci ! |
|
19 07 2002 à 08:43 |
Arf, encore plus rapide que moi. Pfffffffff comment je vais montrer ma science moi ?? hein !?! ;-) |
|
19 07 2002 à 08:47 |
T'énerve pas ;) Y'a pas plus rapide qu'un aware bien entrainé Surtout les fanatiques |
|
19 07 2002 à 08:51 |
Non non ne t'inquiète pas, je m'énerve pas, c'était juste pour rigoler comme ça Et je ne me permettrais pas de m'énerver contre un aware comme o0o. |
|
Pour répondre à ce sujet (et notifier automatiquement son auteur), cliquez sur le bouton REPONDRE A CE SUJET. Si vous voulez en plus avertir de votre réponse une personne qui a participé à ce sujet, cliquez sur le bouton en face de son intervention. Enfin si vous voulez inviter quelqu'un à réagir, utilisez les appeaux ci-dessous. Seuls les membres logués peuvent utiliser les appeaux et seuls les membres actifs peuvent être appeautés ^^. Bonne notification ! Vous n'êtes pas membre ou vous n'êtes pas logué(e) ou les appeaux sont désactivés dans votre profil. Vous ne pouvez pas utiliser les appeaux. |