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 :

Classement en fonction de la 1er lettre


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Classement en fonction de la 1er lettre
    Bonjour,

    Je viens vous soumettre problème que je n'arrive pas à résoudre depuis quelques jours.
    Je travail en ce moment sur une interface web pour le logiciel de liste de diffusion SYMPA; mon but est de faire s'afficher l'alphabet en lien hypertexte et quand on clique sur par exemple la lettre "a", toutes les listes de diffusion commençant par "a" s'affiche.

    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
     
    <A href="javascript:;" onClick="display('a');">A</a> // liens pour la lettre "A" par exemple
     
    <script type="text/javascript">
    	var MonTableau = new Array(); //on crée un tableau
    	var cpt = 0; // compteur à 0
    	</script>
     
    	 [% FOREACH l = which %] // boucle en perl (code spécifique a SYMPA)
     
    	<script type="text/javascript">
    	 MonTableau[cpt] = "[% l.key %]";  // on place le nom de mes listes dans le tableau
    	  cpt = cpt+1; // incrémentation du compteur
    		</script>
     
     [% END %] // code perl
     
    	 <script type="text/javascript">
    function display(x){
    	var reg = "/^"+x+"/" ;  // on crée l'expression régulière :c'est ici que ça marche pas
     
     
    	for (i=0; i<MonTableau.length; i++) {
    			if (reg.exec(MonTableau[i])!=null){	
    			 document.write(MonTableau[i]);} // on affiche le résultat 
     
    	}
     
    }
    </script>
    Mon problème est au niveau de l'expression régulière, si je met ça, cela ne fonctionne pas:
    Par contre là ça fonctionne mais ça implique que je doit me taper la création de cette variable pour toutes les lettres de l'alphabet...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var reg = /^a/  // toujours l'exmple du "a"

    Un autre problème: quand j'affiche mes listes avec document.write(MonTableau[i]); cela m'ouvre une nouvel page blanche avec ma liste de nom, comment faire pour qu'elle s'affiche directement sur la page courante (en dessous des liens par exemple).

    J'espère avoir était le plus clair possible, n'hésiter pas à me poser des questions!
    Merci d'avance

  2. #2
    Membre confirmé Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Points : 514
    Points
    514
    Par défaut
    Et si tu mets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var reg = new RegExp("^"+x);
    Ca devrait aller mieux

    comment faire pour qu'elle s'affiche directement sur la page courante
    Ajoute les données avec innerHTML ou avec createElement, createTextNode etc.

    Edit: oublié le new RegExp ; )

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par goodpz
    Et si tu mets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var reg = new RegExp("^"+x);
    Ca devrait aller mieux
    J'avais déjà essayé mais cela ne marche pas...

    Citation Envoyé par goodpz
    Ajoute les données avec innerHTML ou avec createElement, createTextNode etc.
    Vais tester ça merci !

  4. #4
    Membre confirmé Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Points : 514
    Points
    514
    Par défaut
    As tu fais attention à ne PAS mettre les délimiteurs "/" quand tu définis le pattern avec une chaîne ? (comme dans mon exemple)

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/05/2007, 22h49
  2. [Tableaux] fonction retournant le 1er charactere
    Par Pepito dans le forum Langage
    Réponses: 4
    Dernier message: 22/11/2005, 14h59
  3. Etat en fonction de la première lettre
    Par koss dans le forum Access
    Réponses: 2
    Dernier message: 28/10/2005, 10h54
  4. 1er Lettre en majuscule
    Par Simon2 dans le forum Access
    Réponses: 3
    Dernier message: 05/10/2005, 09h11
  5. Select par mot-clés ou 1er lettre
    Par maadadi dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/02/2004, 10h50

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