IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Champ recherche avec resultat dans balise select


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 18
    Par défaut Champ recherche avec resultat dans balise select
    Bonjour,

    J'essaie de mettre en place un champ de recherche qui recrée à chaque 'clic souris' la liste avec le résultat de la recherche.

    j'ai donc fait le script suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    <script>
    var etab_ville=new Array();
    var etab_desc=new Array();
    var etab_rne=new Array();
     
    function testListeSelect(chaine) {
    	/* vidage de la liste */
    	var tailleListe = document.getElementById('menulisteRneSelect').length;
    	for(yo=0;yo<tailleListe;yo++){
    		document.getElementById('menulisteRneSelect').options[0] = null;
    	 }
     
    	var iii = 0;
    	var k = 0;
     
    	/*création de l'expression régulière pour rechercher dans les chaines de caractères si les mots demandés sont présent */
    	var chaine = chaine.value.toString();
    	var expFormat = new RegExp(" ","gi");
    	var resultat = chaine.replace( expFormat, ".*");
     
    	var maReg = new RegExp( ".*"+resultat+".*", "gi" );
     
    	/* Pour chaque ligne du tableau formant la liste complete*/
    	for (iii in etab_rne) {
    		var nomDesc = etab_ville[iii].substring(0,8)+" : "+etab_desc[iii];
     
    		/* si l'expression régulièr est valide */
    		if (maReg.test(nomDesc) == true) {
    			/*alert(maReg.test(nomDesc));*/ 
    			o = new Option(k+" "+nomDesc,etab_rne[iii]);
    			document.getElementById('menulisteRneSelect').options[k] = o;
    			k = k+1;
    		}
    	}
     
    	/* Selection du premier trouvé par défaut*/
    document.getElementById('menulisteRneSelect').options[0].selected = true;
     
    		}
    </script>
    Lorsque je décommente l'alert, cela fonctionne, mais sans, il ne m'insère pas tous les résultats (3 / 5 sur mes tests). Je ne comprends pas pourquoi.


    merci d'avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 18
    Par défaut Solution
    Alors; il semblerait que la définition de la classe RegExp était le problème.
    Apparemment, lors des tests des chaines de caractère, la première réponse qui retournait vrai était bonne, la seconde qui retournait vrai était mis à fausse, la suivante à vrai, celle d'après à faux et ainsi de suite. Le fait d'avoir un 'véritable' résultat à faux ne réinitialisait pas la variable.

    La solution que j'ai trouvé, était donc de recréer à chaque fois l'objet RegExp dans la boucle.
    Le problème semble alors résolu.


    Je ne sais pas si quelqu'un avait compris mon problème, j'espère juste que la solution que j'ai trouvé aidera ceux qui aurait un problème similaire.

    Rawone

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. champs calculer avec condition dans un etat
    Par scons dans le forum IHM
    Réponses: 2
    Dernier message: 16/12/2006, 19h58
  2. Insert avec exception dans un select
    Par jaskoula dans le forum Oracle
    Réponses: 3
    Dernier message: 11/12/2006, 18h46
  3. pb : VIEW avec variable dans le select
    Par seb.briet dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 13/05/2006, 01h57
  4. Division de 2 integer avec resultat dans un decimal
    Par Labienus dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 28/03/2006, 12h46
  5. [SQL] Convertir un champ INT en CHAR dans un SELECT ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/03/2005, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo