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 :

code liens javascript


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1
    Points : 1
    Points
    1
    Par défaut code liens javascript
    Bonsoir à tous,

    Depuis un moment je travail sur une application de base de données qui dispose d'un module permettant un interfaçage web.
    Cette interface Web est modifiable vie un fichier de style css ainsi que par l'intermédiaire d'un fichier javascript .js . Mon souci est que je ne maîtrise pas du tout le javascript.

    Voici le problème :

    Je dispose donc d'un fichier .js dans lequel son définit différentes fonctions. Je voudrais modifier l'une d'elle à savoir :

    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
    function Link(Zone,Terme,Champ,Base,Fenetre) {
    Terme = Accent(Terme);
    if ( Champ != "" ) Champ = "/(" + Champ + ")";
    // Transfert des éléments dans le formulaire
    document.LIEN.t2005.value = document.forms[Base].t2005.value;
    document.LIEN.t2006.value = document.forms[Base].t2006.value;
    if ( Base == "LINK" ) {
    document.LIEN.t2018.value = "";
    } else {
    document.LIEN.t2018.value = "1";
    }
    if ( Fenetre == "" ) {
    document.LIEN.t2004.value = "1";
    document.LIEN.t2000.value = "(\"" + Terme + "\"" + Champ + ")";
    document.LIEN.t2001.value = "(#" + Terme + "#" + Champ + ")";
    document.LIEN.t2002.value = Zone + "=" + Terme ;
    document.LIEN.action = document.LIEN.t2009.value + "/[in=genisis" +document.LIEN.t2013.value + "0.in]/";
    document.LIEN.submit();
    } else {
    var URL=document.LIEN.t2009.value + "/[in=genisis" +document.LIEN.t2013.value + "0.in]/";
    URL=URL + "?t2000=" + escape("(\"" + Terme + "\"" + Champ + ")");
    URL=URL + "&t2001=" + escape("(#" + Terme + "#" + Champ + ")");
    URL=URL + "&t2002=" + escape(Zone + "=" + Terme);
    URL=URL + "&t2003=" + escape(document.LIEN.t2003.value);
    URL=URL + "&t2004=" + escape(document.LIEN.t2004.value);
    URL=URL + "&t2005=" + escape(document.LIEN.t2005.value);
    URL=URL + "&t2006=" + escape(document.LIEN.t2006.value);
    URL=URL + "&t2007=" + escape(document.LIEN.t2007.value);
    URL=URL + "&t2009=" + escape(document.LIEN.t2009.value);
    URL=URL + "&t2010=" + escape(document.LIEN.t2010.value);
    URL=URL + "&t2011=" + escape(document.LIEN.t2011.value);
    URL=URL + "&t2012=" + escape(document.LIEN.t2012.value);
    URL=URL + "&t2013=" + escape(document.LIEN.t2013.value);
    URL=URL + "&t2014=" + escape(document.LIEN.t2014.value);
    URL=URL + "&t2015=" + escape(document.LIEN.t2015.value);
    URL=URL + "&t2016=" + escape(document.LIEN.t2016.value);
    URL=URL + "&t2017=" + escape(document.LIEN.t2017.value);
    URL=URL + "&t2018=" + escape(document.LIEN.t2018.value);
    msg=window.open(URL,"Index","location=no,status=no,toolbar=no,directories=no,resizable=yes,menubar=no,scrollbars=yes,"+Fenetre);
    msg.focus();
    }
    }
    pour ceux qui se demanderait ce qu'est la fonction Accent, voici :

    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
    function Accent(Terme) {
    var ACCAPP = "CueaaaaceeeiiiAAEooouuyOUaiounN";
    var ACCWIN = "ÇüéâäàåçêëèïîìÄÅÉôöòûùÿÖÜáíóúñÑ";
    var i,j;
    var CarAns,CarApp;
    for (i=0; i<31; i++) {
    CarAns = ACCWIN.charAt(i);
    CarApp = ACCAPP.charAt(i);
    j=Terme.indexOf(CarAns,0);
    while ( j != -1) {
    Terme = Terme.replace(CarAns,CarApp);
    j=Terme.indexOf(CarAns,0);
    }
    }
    return Terme;
    }
    // Retour au formulaire d'interrogation
    function NewQuestion() {
    location.href = document.ENVOI.t2007.value;
    }
    Pour plus de clarté, voici le code html qui est généré par l'application :
    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
    '<tr><td>'/
    '<table width=100% border=0 cellpadding=3 cellspacing=0 bgcolor=#FFFFFF>'/
    if p(v1) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>nom</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    v1,
    '</font></td></tr>'/
    fi,/
    if p(v2) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Catégorie</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    v2,
    '</font></td></tr>'/
    fi,/
    if p(v4) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Fonction</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    v4,
    '</font></td></tr>'/
    fi,/
    if p(v5) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Résumé</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    v5,
    '</font></td></tr>'/
    fi,/
    if p(v6) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Liens</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    (|<a href='javascript:Link("Liens","|v6|","1","LINK","");'>|,v6+|</A>|),'</A>',
    '</font></td></tr>'/
    fi,/
    if p(v7) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Téléphone</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    v7,
    '</font></td></tr>'/
    fi,/
    if p(v8) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Email</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    (|<a href="mailto:|v8|">|,v8+|</A>|),'</A>',
    '</font></td></tr>'/
    fi,/
    if p(v9) then,
    '<tr><td valign=TOP WIDTH=29% bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>Site&nbsp;Web</font></td><td valign=top bgcolor=#FFFFFF><font color=#000000 SIZE=2 FACE=Verdana>'
    (|<a target="_blank" href="http://|v9|">|,v9+|</A>|),'</A>',
    '</font></td></tr>'/
    fi,/
    '</table>'/
    '</td></tr>'/
    (la ligne qui nous intéresse est "Liens")

    Ne vous inquiétez pas, je ne demande pas la modification de tout le code mais seulement de la partie suivante :

    Je voudrais que le champ "Terme" qui est utilisé dans la fonction puisse contenir plus d'un élément, éléments qui seraient séparés par une virgule.

    Je m'explique :

    J'ai une base de données qui contient plusieurs noms de personnes avec leurs informations de contacts, fonctions etc... et j'ai aussi un champ qui s'appel liens, ce dernier permet de lister toutes les personnes en contact avec la personne consultée.

    exemple : Liens : jean-pierre dupont, stéphane dupré, élise lefévre..

    La fonction Link permet en cliquant par exemple sur "jean-pierre dupont" d'accéder à sa fiche (en refaisant une requête dans la base). Pour le moment cette fonction ne me permet pas d'entrer plusieurs noms dans ce champ mais seulement un seul. Je voudrais pouvoir en entrer plusieurs en utilisant comme séparateur une virgule.

    s'il y avait quelqu'un d'assés sympa pour se pencher sur mon problème, cela fait un petit moment que je me triture les méninges...

    Merci d'avance pour vos lumiéres
    Yaz

  2. #2
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Le principe est d'utiliser la méthode split, ce qui te donnera un tableau, puis de répéter la fonction pour chaque élément.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    my_array = terme.split(",");
    for (i=1; i<=my_array.length; i++)
    {
    new_terme = myarray[i];
    ...
     
    }

Discussions similaires

  1. Lien javascript sur une image
    Par beegees dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/03/2006, 16h30
  2. [FLASH MX 2004] liens javascript et fichier txt externe
    Par Shekhdamas dans le forum Flash
    Réponses: 4
    Dernier message: 23/02/2006, 18h52
  3. Code d’annulation JavaScript
    Par Furius dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/12/2005, 14h19
  4. target sur un lien javascript
    Par mulot49 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/10/2005, 15h15
  5. [PHP-JS] lien javascript vers php
    Par guttts dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/08/2005, 23h00

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