[web] liste de choix qui charge une liste

gahel4 Messages postés 140 Statut Membre -  
crabs Messages postés 909 Statut Membre -
Bonjour,

Je voudrais faire une page web contenant 2 listes de choix et qu'en fonction du choix fait dans la première liste ça charge la deuxième liste.

Javascript, php je n'ai pas de préférence...

Merci.

Gaël
A voir également:

3 réponses

crabs Messages postés 909 Statut Membre 507
 
salut,

Ca tombe bien que tu proposes PHP et JS, tu peux utiliser les deux via le
XMLHttpRequest.
Exemple : http://www.crabs-world.com/httprequest/index.xml
Regardes la feuille XSL elle contient les éléments HTML. Sinon la feuille XML permet
juste d'initialiser les 2 listes.

Sinon fait un enregister sous avec ton navigateur en précisant que tu veux du
HTML (ça fonctionne avec Mozilla).
A+, crabs
0
gahel4 Messages postés 140 Statut Membre 4
 
Merci Crabs,

C'est tout à fait ce que je veux par contre je n'arrive pas à le mettre en oeuvre. Je ne vois pas où tu défini le nom des pères ni celui des enfants...

A+
0
crabs Messages postés 909 Statut Membre 507
 
Salut,

Dans la feuille xsl, tu trouves :
<select id="l1" size="10" style="width:200px;" onchange="l1_change()">
  <xsl:apply-templates select="/donnees/les_peres"/>
</select>

(et peu près la même avec l2, donnees/les_fils et l2_change() pour la liste des fils)
Le xsl:apply-templates permet d'extraire le noeud les_peres contenu dans la page
xml.
Plus haut dans la feuille xsl tu rencontres :
<xsl:template match="fils|pere">
  <xsl:element name="option">
    <xsl:attribute name="value">
      <xsl:value-of select="@valeur"/>
    </xsl:attribute>
    <xsl:value-of select="@nom"/>
  </xsl:element>
</xsl:template>

Un noeud 'pere' (cf le XML) s'écrit :
<pere nom="pere0" valeur="0" />

La feuille XSL va transformer cela en :
<option value="0">pere0</option>

(même chose pour un fils)
Ainsi tes deux listes sont initialisées car ces lignes "option" apparaissent dans
le bon select.

A+, Crabs
0