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 :

remplacer une virgule par un point


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 179
    Par défaut remplacer une virgule par un point
    Bonjour,
    je souhaiterai remplacer une virgule contenu dans une chaine de caractere par un point.
    Par exemple 12,5 -> 12.5
    Voici ce que j'ai fait mais qui ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function replaceVirgule(val){
    	var reg = new RegExp(",","g");
    	val=val.replace(reg,".");
    	return val;
    }

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Et que donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    val=val.replace(",",".");

  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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function replaceVirgule(val){
    	var reg =/,/g;
    	val=val.toString().replace(reg,".");
    	return val;
    }
    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 à l'essai
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Par défaut
    Bonjour,
    j'ai passé la journée sur ce problème :
    je n'arrive pas à faire remplacer la virgule par le point, c'est pour une entrée dans un formulaire de calcul js qui impose le point en décimales.
    Voici mon dernier essai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    {	
    var TA=Number(document.Saisie.Taux.value); 
    	var reg =/,/g;
    	var TB=TA.toString().replace(reg,".");
    var impr=	"<"+"br />Taux A "+ 
    TA+ 
    "<"+"br />Taux B " 
    TB+ 
    "<"+"br />"; 
    document.getElementById("result").innerHTML=impr; 
    }
    ça affiche donc le TA pour les exemples 4 ou 4.1, mais dès que je mets 4,1 il ne se passe plus rien!!
    Où est l'erreur?
    Merci d'avance

  5. #5
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 684
    Par défaut
    enlève ton Number(), déjà...

  6. #6
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Par défaut
    J'ai essayé et effectivement je n'ai plus l'erreur NaN, et TA s'affiche.
    Mais pas le TB corrigé...
    Et si j'ai besoin d'un number c'est pour le passer en calcul financier...

  7. #7
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    Bonsoir,
    Mais pas le TB corrigé..
    une bonne indentation et un peu de soin à l'écriture du code peuvent souvent aider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var impr="<"+"br />Taux A " +TA +"<" +"br />Taux B " TB +"<"+"br />";
    ne manquerait-il pas un + juste avant le TB ?

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Par défaut
    That's it!

    J'ai découvert javascript aujourd'hui, faut pas trop m'en vouloir...
    Merci mille mercis!

  9. #9
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Par défaut
    Ah ouais mais non

    Ok j'ai pu afficher TB dans mon petit script pour vérifier que la transformation se faisait, mais la variable TB renvoie toujours une erreur NaN dès que je l'envoie dans le calcul...

    J'ai essayé ça, qui marche pour le else mais pas pour le if...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if(isNaN(TA) == true)	
    	{
    	var reg =/,/g;
    	var TB=Number(TA.toString().replace(reg,"."));
    	}
    	else 
    	{var TB=Number(TA);}

  10. #10
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    var TB, TA = "1245,5";
    // virgule -> point
    TA = TA.replace(',','.');
    if( isNaN(TA)){
      // traitement si TA n'est pas un nombre
      alert('ERREUR:\n(TA is not a numeric)\nSaisir des chiffres !');
    }
    else{
      // suite des traitements
      TB = parseFloat(TA);
      alert( TB *1.5);
    }

  11. #11
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Par défaut
    C'était le parseFloat qui me manquait, MERCI !!!

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/03/2012, 21h27
  2. Réponses: 5
    Dernier message: 23/07/2009, 19h49
  3. Remplacer la virgule par un point
    Par lollo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/11/2008, 18h08
  4. Remplacer les virgules par des points
    Par vatsyayana dans le forum Excel
    Réponses: 7
    Dernier message: 14/06/2008, 11h13
  5. [sql] remplacer une virgule par un point
    Par shiners300 dans le forum Oracle
    Réponses: 1
    Dernier message: 23/12/2005, 19h19

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