Bonjour à tous,
Je viens vous soliciter pour la modification d'un script Javascript.
Voila c'est simple, j'ai une boite à liste (SELECT) et au dessus un champs input. Ce champs sert de "filtre en live" pour la boite à liste au dessus.
Exemple: Dans le select il y a tout les pays du monde, si vous taper dans le champs au dessus fr vous n'aurez plus que les pays commencant par fr dans le select.
Bref, j'ai trouvé ce script sur toutjavascript.com.
Le probleme c'est que il me fait le code suivant:
Code :
- <option value="France">France</option>
|
Moi je voudrais bien qu'il prenne l'id du pays et non le contenu dans le value. Serait-il possible de changer donc la variable de tableau javascript qui est:
Code :
- Liste.Add("Afghanistan" );
|
en :
Code :
- Liste.Add(1, "Afghanistan" );
|
???
Si oui, il faut surement apporter des modifications, quelqu'un pourrait-il donc m'aider ?
Merci.
Le code si dessous:
Code :
- <SCRIPT LANGUAGE="JavaScript">
- var Liste=new CreerListe("Pays", 5, 200)
- Liste.Add("Afghanistan" );
- Liste.Add("Afrique du sud" );
- Liste.Add("Albanie" );
- Liste.Add("Algérie" );
- Liste.Add("Allemagne" );
- function CreerListe(nom, hauteur, largeur) {
- this.nom=nom; this.hauteur=hauteur; this.largeur=largeur;
- this.search="";
- this.nb=0;
- this.Add=AjouterItem;
- this.Afficher=AfficherListe;
- this.MAJ=MAJListe;
- }
- function AjouterItem(item) {
- this[this.nb]=item
- this.nb++;
- }
- function AfficherListe() {
- if (document.layers) {
- var Z="<SELECT name="+this.nom+" size="+this.hauteur+">";
- } else {
- var Z="<SELECT name="+this.nom+" size="+this.hauteur+" style='width:"+this.largeur+"'>";
- }
- for (var i=0; i<this.nb; i++) {
- Z+="<OPTION value=\""+this[i]+"\">"+this[i]+"</OPTION>"
- }
- Z+="</SELECT>"
- document.write(Z);
- }
- function MAJListe(txt,f) {
- if (txt!=this.search) {
- this.search=txt
- f.elements[this.nom].options.length=0;
- for (var i=0; i<this.nb; i++) {
- if ( this[i].substring(0,txt.length).toUpperCase()==txt.toUpperCase() ) {
- var o=new Option(this[i], this[i]);
- f.elements[this.nom].options[f.elements[this.nom].options.length]=o;
- }
- }
- if (f.elements[this.nom].options.length==1) {
- f.elements[this.nom].selectedIndex=0;
- }
- }
- }
- function ListeCheck() {
- Liste.MAJ(document.forms["monform"].search.value,document.forms["monform"])
- if (document.layers) {
- setTimeout("ListeCheck()", 1001)
- } else {
- setTimeout("ListeCheck()", 100)
- }
- }
- </SCRIPT>
|
Code :
- <FORM name=monform>
- <INPUT type=text name=search><BR>
- <SCRIPT language=javascript>
- Liste.Afficher();
- ListeCheck();
- </SCRIPT>
- </FORM>
|