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 :

split() avec séparateur problématique


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 28
    Points
    28
    Par défaut split() avec séparateur problématique
    Bonjour.

    Je voudrais éclater une chaîne avec la fonction split en posant pour délimiteur l'apostrophe: '.

    Apparemment c'est un problème puisque j'ai beau tout essayé, rien n'y fait, ni même l'antislash:

    split(" \' ");


    Ma chaîne c'est un paramètre onClick d'un href:
    onClick="open_win('customer_details.jsp?id=123')"

    Avec un premier split("=") , je peux conserver la chaine 123')" .
    Maintenant, comment conserver uniquement l'id? Sachant que je n'ai aucun moyen de prédire à l'avance le nombre maximum de chiffres composant l'id.


    Merci

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ton_id = ton_url.substring(ton_url.lastIndexOf("=")+1, ton_url.length)


    A+

    EDIT : ajout du "+1"

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 28
    Points
    28
    Par défaut
    Euh... j'ai pas compris ce que tu me proposais.
    tu pars du principe que je récupère le lien contenu dans <a href="lien_url" onClick=.... > ?

    Auquel cas il va dabord falloir m'indiquer comment je dois m'y prendre.


    et ton lastIndexOf , tu as comme second parametre url.length. J'ai précisé que je ne connaissais pas la taille de l'ID. Donc par conséquent il en est de même pour l'url....

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 28
    Points
    28
    Par défaut
    y a vraiment pas moyen d'utiliser split avec pour séparateur l'apostrophe ??!!
    c'est fou ca..........

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par ninox_
    Ma chaîne c'est un paramètre onClick d'un href:
    onClick="open_win('customer_details.jsp?id=123')"

    Avec un premier split("=") , je peux conserver la chaine 123')" .
    Maintenant, comment conserver uniquement l'id? Sachant que je n'ai aucun moyen de prédire à l'avance le nombre maximum de chiffres composant l'id.
    Donne ton code (en JS, pas en français), sinon, difficile de te suggérer comment l'intégrer

    Pour info : tu n'auras pas besoin de connaitre la longueur de ta chaine ...

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par ninox_
    y a vraiment pas moyen d'utiliser split avec pour séparateur l'apostrophe ??!!
    c'est fou ca..........
    Heu ... c'est le résultat qui t'intéresse ?
    Ou uniquement d'utiliser split()

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 28
    Points
    28
    Par défaut
    Ce que j'ai sur ma page html:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="new_order_customer.jsp" onClick="open_win('customer_details.jsp?id=123')" class="popup_link">

    Ce que je veux faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var strlink = document.getElementsByClassName("popup_link")[0].onclick;
     
    var tmp = strlink.toString();
    var tab = tmp.split('id=');
    var profileId = tab.split(" \' ");
    alert(profileId[0]); // 123
    Jusqu'à tab, c'est correct. comme dit précédemment, ca me permet de récup' 123')} .

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var strlink = document.getElementsByClassName("popup_link")[0].onclick;
     
    var tmp = strlink.toString();
    var tab = tmp.substring(tmp.lasteIndexOf("=")+1, tmp.length-2);
    "-2" pour enlever ')

    A+

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 28
    Points
    28
    Par défaut
    t'es un chef!

    il faut être calé en Jscript pour contourner ce type de trucs...

    merci.

  10. #10
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par ninox_
    il faut être calé en Jscript pour contourner ce type de trucs...
    Disons plutôt que si la clé de 12 est le meilleur outil pour serrer/déserrer un écrou, c'est pas le bon pour enfoncer un clou

    A+

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/04/2014, 14h38
  2. Réponses: 4
    Dernier message: 31/05/2012, 00h54
  3. utiliser split() avec un / (comme séparateur)
    Par skyangel20 dans le forum Langage
    Réponses: 2
    Dernier message: 24/05/2007, 21h47
  4. [C#2.0] méthode split avec séparateur de plusieurs caratères
    Par CUCARACHA dans le forum Windows Forms
    Réponses: 5
    Dernier message: 05/02/2007, 19h11
  5. [langage] split avec deux motifs (Newbie)
    Par Raumsog II dans le forum Langage
    Réponses: 2
    Dernier message: 07/06/2004, 10h31

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