Problème avec la méthode String.split() et les "\"

Résolu
Kenshin07 Messages postés 7 Date d'inscription lundi 23 janvier 2006 Statut Membre Dernière intervention 23 mars 2007 - 22 mars 2007 à 16:09
Kenshin07 Messages postés 7 Date d'inscription lundi 23 janvier 2006 Statut Membre Dernière intervention 23 mars 2007 - 23 mars 2007 à 08:34
Bonjour,

je développe un module d'upload, et j'aimerais pouvoir récupérer le nom du fichier sélectionné afin de le mettre dans la value de mon TextBox. J'avais pensé utiliser la méthode split() sur  le chemin du fichier, mais elle ne prends pas en compte les ""...
 
Voici mon code :

        var file= document.getElementById("file" + id);
        setTitre(titre,file.value);

        function setTitre(input,filename)
        {
                var reg=new RegExp("[\]+", "g");
                var tableau=filename.split(reg);
                input.value = tableau[tableau.length-1];
        }

Merci de votre aide....

@nDriC#7

2 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
22 mars 2007 à 16:18
Bonjour,

    dans une expression régulière et en javascript aussi,
        certains caractères sont significatifs
        c'est le cas du \  ici par exemple \t veut dire <tab>
                                                              \r\n c'est passage à la ligne...
       quand on veut utiliser un tel caractère "pour ce qu'il est"
          il faut le dire : \\
                    ça devrait aller mieux
           sinon \] est interprété    comme un seuul caractère.

          ( pas regardé le reste ! )
         
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]                    




<hr />
3
Kenshin07 Messages postés 7 Date d'inscription lundi 23 janvier 2006 Statut Membre Dernière intervention 23 mars 2007
23 mars 2007 à 08:34
Merci beaucoup, c'est exactement la réponse qu'il me fallait.

Par contre, si je met : 

               var reg=new RegExp("[\\]+", "g");

Il me sort une erreur...
Donc j'ai fait comme ça : 

        var file= document.getElementById("file" + id);
        setTitre(titre,file.value);

        function setTitre(input,filename)
        {
                var tableau=filename.split("\");
                input.value = tableau[tableau.length-1];
        }

Et ça marche au poil !!!

MERCI BEAUCOUP !!!!!!!
3
Rejoignez-nous