Replace() avec le sigle €

Résolu
druidou59 Messages postés 87 Statut Membre -  
druidou59 Messages postés 87 Statut Membre -
Bonjour,

Je souhaite remplacer le sigle € contenu dans une chaine avec la fonction replace() mais celui-ci n'est pas reconnu
Valeur de base dans prix_unit = 15,00 €
je souhaite conserver que le 15,00 et donc supprimer le €

var prix_unit_ok = prix_unit.replace("€", "");
alert (prix_unit_ok);

affiche 15,00€
SI je remplace le "€" par 15 dans la fonction replace le resultat est bien 00,00 € c'est donc bien le sigle qui pose soucis.

Merci de votre aide.

3 réponses

  1. tryan44 Messages postés 1289 Date d'inscription   Statut Membre Dernière intervention   220
     
    Il a du vouloir mettre 2 versions encodés du sigle euros (Code ISO, Code HTML https://www.commentcamarche.net/contents/489-caracteres-speciaux-html ) mais le forum doit les transformer automatiquement.

    Soit le problème vient de la, soit il provient de l'encodage utilisé dans votre document. Si je fais :
    function myFunction()
    {
    var prix_unit = document.getElementById('our_price_display').innerHTML; 
    var prix_unit_ok = prix_unit.replace("€","");
    alert(prix_unit_ok);
    var resultat = document.getElementById("result").innerHTML = prix_unit_ok;
    }

    ..et que mon document utilise un charset en utf-8 et que celui-ci est encodé en utf-8 (sans BOM), le résultat est correcte.
    2
    1. druidou59 Messages postés 87 Statut Membre
       
      Le problème venait en effet de l'encodage du fichier
      Erreur pourtant connu...
      Merci pour m'avoir rouvert les yeux sur l'encodage des fichiers sous notepad++
      0
  2. tryan44 Messages postés 1289 Date d'inscription   Statut Membre Dernière intervention   220
     
    Salut,

    Chez moi ça ne pose aucun soucis :
    function myFunction()
    {
    var prix_unit = "15,00 €";
    var prix_unit_ok = prix_unit.replace("€","");
    alert(prix_unit_ok);
    }

    Le sigle € est bien supprimé.
    0
    1. druidou59 Messages postés 87 Statut Membre
       
      En affectant la variable ainsi cela marche aussi chez moi, cependant la variable prix_unit est affecté de cette manière:
      var prix_unit = document.getElementById('our_price_display').innerHTML;
      En affichant la valeur de cette variable avec un alert j'ai bien "15.00€" cependant cela ne fonctionne pas ainsi :(
      SI tu as une idée je suis preneur.... MErci
      0
  3. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    Essaye de remplacer ton :
    replace("€","");

    par :
    replace("€","");

    Ou :
    replace("€","");
    0
    1. druidou59 Messages postés 87 Statut Membre
       
      Bonjour Nhay,

      Sauf erreur de ma part tes 3 propositions sont identiques... ? ;)
      0
    2. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
       
      En effet, comme indiqué par tryan, le forum à converti ce que je voulais dire.
      0