J'ai deux liste une pour les pays et l'autre pour les villes et je veux faire un

scropfi01 Messages postés 16 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 2 juin 2010 - 7 févr. 2010 à 10:00
 hind - 1 mai 2014 à 13:02
j'ai deux liste une pour les pays et l'autre pour les villes et je veux faire un filtre des villes selon la valeur de pays choisi
exemple quand je choisit pays ="xxx" je veux que dans ma liste des ville apparait que les villes du pays "xxx"

2 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
10 févr. 2010 à 18:18
Bonjour,
Voir du coté des listes liées, foultitudes d'exemple de partout.
Juste une question, pourquoi vouloir faire un filtrage et non des listes par pays que l'on affiche fonction du pays choisi?
;O)
0
scropfi01 Messages postés 16 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 2 juin 2010
11 févr. 2010 à 11:30
justement je maitrise pas bien le js donc j'ai pas pu le faire , si vous avez un script qui me permet de faire ça vous me le donner ,
Merci
0
Salam tu peux faire ca ds une page JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>index</title>
</head>
<body>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
var pays = new Array; //nouveau tableau
pays[0] = new Array("p0", "pays0"); //nouveau tableau, on va donc avoir pays[0][0]="p0"
pays[1] = new Array("p1", "pays1");
pays[2] = new Array("p2", "pays2");

var ville=new Array;
// pays0
ville["p0"] = new Array;
ville["p0"][0] = new Array("p0v0", "pays0-ville0");
ville["p0"][1] = new Array("p0v1", "pays0-ville1");

//pays1
ville["p1"]=new Array;
ville["p1"][0] = new Array("p1v0", "pays1-ville0");
ville["p1"][1] = new Array("p1v1", "pays1-ville1");

//pays2
ville["p2"] = new Array;
ville["p2"][0] = new Array("p2v0", "pays2-ville0");
ville["p2"][1] = new Array("p2v1", "pays2-ville1");

function filltheselect(liste, choix){
switch (liste){
case "listepays":
raz("listeville");
for (i=0; i<ville[choix].length; i++) {
new_option = new Option(ville[choix][i][1],ville[choix][i][0]);
document.formu2.elements["listeville"].
options[document.formu2.elements["listeville"].length]=new_option;
}

break;

}
}

function raz(liste){
l=document.formu2.elements[liste].length;
for (i=l; i>=0; i--)
document.formu2.elements[liste].options[i]=null;
}
</script>

<form name="formu2" action="#">

Choisir un pays

<select name="listepays" onChange='filltheselect(this.name, this.value)'>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
for (i=0; i<pays.length; i++)
document.write("<option value='" +pays[i][0]+ "'>" +pays[i][1]);
</script>
</select>
<br>

Choisir une ville
<select name="listeville" onChange='filltheselect(this.name, this.value)'>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
for (i=0; i<ville["p0"].length; i++)
document.write("<option value='" +ville["p0"][i][0]+ "'>" +ville["p0"][i][1]);
</script>
</select>

<br>



</form>




</body>
</html>
0