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 :

[IE8] JavaScript et accents


Sujet :

JavaScript

  1. #1
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut [IE8] JavaScript et accents
    Bonjour,

    Sur une vieille application web (en .NET 1.1), je fais pas mal de window.open(...). Dans l'url en paramètre, il peut y avoir des caractères accentués (je sais c'est mal) et avec Internet Explorer 8, j'ai un comportement totalement différent suivant que le site est en intranet local ou dans la zone interne. Dans le premier cas, tout se passe correctement : les accents sont bien pris en compte. Dans le second cas, tout va de travers et les accents sont tout simplement ignorés : au lieu d'avoir "Générale" j'obtiens "Gnrale". Encore plus étrange, ça ne se produit que lorsque j'ouvre une nouvelle fenêtre, si par exemple, je fais un window.open qui en fait, a comme destination la même fenêtre, ça fonctionne en intranet et en internet.

    Une idée ? Merci.

  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
    cela provient du charset ...

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Charset UTF8 sur toutes les pages et globalization .NET UTF8 dans le web.config.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Et tes fichiers sont enregistrés avec quel encodage ?

  5. #5
    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
    envoies tu des headers UTF-8 ?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Voilà les en-tête de réponse obtenus (Firebug) sur la lecture d'une page prise au hasard :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Date: Tue, 21 Jul 2009 10:20:41 GMT
    Server: Microsoft-IIS/6.0
    X-Powered-By: ASP.NET
    X-AspNet-Version: 1.1.4322
    Cache-Control: private
    Content-Type: text/html; charset=utf-8
    Content-Length: 579
    Donc, en Content-Type est bien en charset utf-8.

    Visual Studio 2003 ne permet pas de modifier l'encodage des fichiers utilisés donc je suppose qu'ils sont tous en ANSI, sauf les *.js que j'ai modifié manuellement pour tester en UTF-8 via notepad. J'ai ajouté dans les <meta> de chaque page ASP.NET que le charset était utf-8. A mon avis, l'encodage du fichier n'y est pour rien, car les accents s'affichent bien dans le reste du document ... et que si l'action s'effectue sur la même fenêtre, ça fonctionne (même avec les accents).

  7. #7
    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
    c'est forcément une histoire de charset

    essaye de passer les autres fichiers en utf8 avec le blocnote de windows par exemple

    je ne parlais pas de meta charset pour le header mais de forcer le
    header charset avec le langages serveur

  8. #8
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Oui, c'est forcé au niveau du web.config de l'application (et c'est spécifié dans les en-têtes de la réponse) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
    Imaginons une page HTML User et une page Service. User contient un lien qui permet d'ouvrir en pop-up User via la fonction suivante qui prend 4 paramètres : url, nom, dimensions (largeur, longueur).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    javascript:openWindow("PopupDefault.aspx?Page=Service&Service=Comptabilité", "Service", 350, 450);
    Je l'appele depuis la page User : ça ouvre une nouvelle fenêtre avec l'url PopupDefault.aspx?Page=Service&Service=Comptabilit (sans é). Depuis la fenêtre Service, il est possible d'ouvrir (via l'appel de la même fonction javascript) un autre service. Comme le nom de fenêtre est identique, ça n'ouvre pas de nouvelle fenêtre et à ce moment là, il ouvre bien PopupDefault.aspx?Page=Service&Service=Comptabilité (avec le é) et ça fonctionne... c'est pourquoi je doutes réellement que c'est un problème d'encodage, PopupDefault.aspx, User.aspx et Service.aspx utilisant exactement les mêmes encodages.

  9. #9
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Donc,

    J'ai passé tous les fichiers ASPX, ASPX.CS, ASAX, CONFIG, JS, CSS etc. en codage UTF8, j'ai utilisé charset UTF8 sur toutes les pages ASPX, mis mon application en globalization UTF8 ... et j'ai toujours un comportement différent suivant que le site soit en zone internet ou intranet local : internet m'éjecte les accents ... intranet local me les conserve ... pas cool ...

  10. #10
    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
    et le balises meta des pages ?

  11. #11
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    sur toutes les pages ASPX.

Discussions similaires

  1. Appel Jsp depuis Javascript : problèmes d'accents
    Par lars528 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 31/01/2011, 17h34
  2. Perte des accents entre XML et javascript
    Par jejeman dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/10/2008, 15h59
  3. Javascript et traitement des accents
    Par metalcoyote dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 20/10/2008, 12h00
  4. [javascript] accents dans les message "alert&q
    Par logica dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 10/07/2008, 10h08
  5. jsf javascript accent
    Par thetoto52 dans le forum JSF
    Réponses: 2
    Dernier message: 11/04/2008, 11h30

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