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 :

Javascript et expression reguliere


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Par défaut Javascript et expression reguliere
    Bonjour,

    Je possede un tableau, qui se genere automatiquement. Je souhaiterais qu'au moment ou celui ci se charge, certain mot se transforment en lien.

    Je m'explique:
    Les cases du tableau contiennent des caracteres
    Lorsque la case contient des caractere de forme AMD153789, je souhaite que ceci deviennent des liens.

    Voici le code JS que j'ai ecrit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function textlink(lemot){
    var chaine=lemot.innerHTML ;
    var regl = new RegExp("[AMD][0-9]{6}","g");
    	if (chaine.match(regl)){
    		alert("ok");
    		lemot.innerHTML =chaine.link("http://google.fr")
    	}
    }
    J'ai 2 questions:
    -Comment faire pour que toutes les cases du tableau soit traitées au chrgement?
    - Une case de tableau peut contenir plusieur chaine de Type AMD132789, comment faire pour chaque expression d'une case deviennent chacun un lient?

    D'avance merci.

  2. #2
    Membre éprouvé Avatar de Alt157
    Profil pro
    Inscrit en
    Février 2009
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 143
    Par défaut
    Bonjour,

    Dans ton expression : il cherche soit A soit M soit D il faut mettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var reg = new RegExp("AMD[0-9]{6}", "g");
    chaine = chaine.replace(reg, 'le texte de remplacement');
    c'est le G qui signifie que c'est global mais il faut peut être ajouter le multiligne ?

    sinon quand tu parles de tableau c'est un array javascript ou un table html ?

    Se génère automatiquement ? AJAX ?

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    un petit exemple vallant mieux que de longs discours:
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    <html>
    <head>
    
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nouvelle page 1</title>
    <style type='text/css'>
    .strong {font-weight:bold;}
    .red {color:red;}
    
    </style>
    
    
    <script type="text/javascript">
    function swapBalise(balise,classe,texte){
    
    var Reg=(document.all)?new RegExp("[\[]b[\]](.+)[\[]\/b[\]]","gi"):/\[b\](.+)(\[\/b\])/gi;
    
    //varReg1=new RegExp('<span class="strong">'+/$1/+'</span>')
    
    //var Reptexte=texte.replace( Reg,'<span class="'+classe+'">$1</span>')
    var Reptexte=texte.replace( Reg,'<span class="'+classe+'">$1</span>')
    
    alert(Reptexte)
    return Reptexte;
    }
    
    function check(val){
    var reg=(document.all)? new RegExp("[\[]{1}url=((.)*?(\s?))[\]]","gi"):/\[url=([\s\S]*(\s?))\]/gi;
    var Reptexte=val.replace( reg,'<a href="$1">$1</a>')
    
    alert(Reptexte)
    }
    
    function surbrillance(ou,quoi){
    var StrReg='('+quoi+')(?=.<)'
    var Reg=new RegExp(StrReg,"gi")
    ou.innerHTML= ou.innerHTML.replace(Reg,'<span style="background-color:yellow;">$1</span>')
    }
    
    
    
    </script>
    
    
    </head>
    
    <body>
    <div onclick="this.innerHTML=swapBalise('b','strong',this.innerHTML)" > bonjour jean  </div>
    <div onclick="this.innerHTML=swapBalise('r','red',this.innerHTML)" > bonjour [r]jean[/r]  </div>
    <div onclick="this.innerHTML=surbrillance(this,'red')" > red bonjour red rediriger quoi  </div>
    <div id="zone">bonjour tout <span class="tout">le monde</span></div>  
    <input type='button' value="go" onclick="surbrillance(document.getElementById('zone'), 'tout')" style="width:300px">
    </body>
    
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre éclairé Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Par défaut
    Citation Envoyé par Alt157 Voir le message
    Bonjour,
    sinon quand tu parles de tableau c'est un array javascript ou un table html ?

    Se génère automatiquement ? AJAX ?
    C'est un tableau html. QUand je parle de dynamqiue, c'est l'asp.net qui lit un xml et xsl....

    Merci SpaceFrog pour ton exemple, mais là, ta fonction se declenche au cliquage de bouton. Moi je voudrais que ca se declenche au chargement de la page, au chargement des cases du tableau...

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut

    balise body onload ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre éclairé Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message

    balise body onload ...
    Merci SpaceFrog

  7. #7
    Membre éclairé Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Par défaut
    A quoi servent tes fonctions swapBalise et chack? sont elles indispensable?

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

Discussions similaires

  1. Expression Reguliere JavaScript
    Par jejedi95 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/09/2008, 15h57
  2. javascript expression reguliere
    Par Alex35 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 19/12/2007, 15h33
  3. Expressions regulieres et Javascript : les operateurs
    Par olive57GT dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/12/2007, 18h33
  4. expression reguliere javascript
    Par goomie dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/05/2007, 13h24
  5. expressions regulieres javascript
    Par youcef81 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/06/2006, 18h55

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