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 :

affichage données UTF-8


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut affichage données UTF-8
    Bonjour,

    J'ai une application qui extrait des données dans un fichier xml au format UTF-8 ensuite ces données sont récupérées en javascript pour initialiser quelques champs d'un formulaire. Le problème c'est que les caractères accentués en Français ne sont pas bien affichés. Par exemple les "é" sont remplacés par des "é". J'ai fait une recherche là dessus et j'ai découvert que javascript ne gère pas les données UTF-8 mais plutôt UTF-16.

    J'ai donc utilisé une fonction javascript pour decoder les données UTF-8 (voir lien http://www.webtoolkit.info/javascript-utf8.html) avant de les afficher. En ce moment j'ai les caractères accentués qui sont bien affichés sauf pour les majuscules (par exemple "É" est remplacé par "ð").

    Comment faire pour afficher les caractères accentués correctement (majuscule inclus) ?

    Toute aide sera la bienvenue.

  2. #2
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    la solution n'est pas javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

  3. #3
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Merci de la réponse mais dans l'entête de la jsp j'ai déjà :
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

    Quand j'affiche les informations directement sans passer par javascript je n'ai pas de problème.

    Vois tu une autre option ?

    Je me perd un peu avec les notions de encodage et de decodage, connais tu de bons sites qui pourraient m'éclairer ?

  4. #4
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    essaye de mettre le charset="UTF-8"
    dans la balise script ?

  5. #5
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    ça marche pas.

    tu peux tester pour voir le problème, afficher dans un champ au moyen de javascript la chaine suivante "CÉRAMIQUES" représentation "CÉRAMIQUES". c'est ce que je récupère du fichier xml (UTF-8) avant l'affichage.

  6. #6
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    pourquoi dans le champ de mon formulaire j'ai toujours:
    NÉCESSITÉS

    Dans l'entête de la jsp j'ai bien:
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

    et pour le javascript j'ai bien:
    <script charset="UTF-8" language="Javascript" type="text/javascript">

    Il faut que je trouve une solution à ce problème. Ce n 'est pas logique

    Dernier truc ça marche sous Firefox mais pas sous IE.

  7. #7
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut Décodage des caractères accentués majuscule
    Qui peut me dire pourquoi sous IE la fonction utf8_decode (récuperée sur http://www.webtoolkit.info/javascript-utf8.html et à voir ci dessous) ne me décode pas les caractères accentués majuscules, seulement en minuscule. En entrée j'ai un flux UTF-8. Comme exemple:
    Bêches -> Bêches
    NÉCESSITÉS - > NðCESSITðS

    function utf8_decode(utftext) {
    var string = "";
    var i = 0;
    var c = c1 = c2 = 0;

    while ( i &lt; utftext.length ) {
    c = utftext.charCodeAt(i);
    if (c &lt; 128) {
    string += String.fromCharCode(c);
    i++;
    }
    else if((c &gt; 191) &amp;&amp; (c &lt; 224)) {
    c2 = utftext.charCodeAt(i+1);
    string += String.fromCharCode(((c &amp; 31) &lt;&lt; 6) | (c2 &amp; 63));
    i += 2;
    }
    else {
    c2 = utftext.charCodeAt(i+1);
    c3 = utftext.charCodeAt(i+2);
    string += String.fromCharCode(((c &amp; 15) &lt;&lt; 12) | ((c2 &amp; 63) &lt;&lt; 6) | (c3 &amp; 63));
    i += 3;
    }
    }
    return string;
    }

    any help ?

Discussions similaires

  1. [SQL] Moteur de recherche problème affichage donnée dans select
    Par vincedjs dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 07/04/2006, 20h27
  2. Newbie | affichage donnée d'un formulaire
    Par steve o'steen dans le forum Langage
    Réponses: 5
    Dernier message: 17/03/2006, 10h48
  3. [SQL-Server] Pb affichage données dans tableau
    Par steve o'steen dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 14/03/2006, 09h29
  4. [débutant] problème affichage données table ds TDBGrid
    Par lidouka dans le forum Composants VCL
    Réponses: 1
    Dernier message: 16/12/2005, 13h50
  5. Affichage Données avec Espace ds Zone Texte
    Par dai.kaioh dans le forum ASP
    Réponses: 2
    Dernier message: 22/02/2005, 16h43

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