2010-05-20 5 views
2

J'ai un contenteditablediv où je lis les caractères individuels et les envoyer à un serveur (pour plus d'arrière-plan ce qui est similaire à Google Wave où la saisie d'un caractère envoie automatiquement) J'ai utilisé un vieux html simple textfield avant et tout a bien fonctionné jusqu'à ce que je "amélioré" à un div contented.lecture du DOM HTML retourne caractères UTF-8

Mon problème est que maintenant les caractères sont au format UTF-8, ce qui est à l'origine des problèmes étranges sur le serveur que je préfère ne pas debug. Il serait beaucoup plus facile de tout forcer à être ASCII côté client.

Y at-il un moyen de le faire? J'ai essayé de mettre dans une balise meta indiquant le fichier html est charset=ISO-8859-1, mais il ne semble pas fonctionner. La lecture de la balise div renvoie toujours les codes UTF-8. (Par exemple, quand je presse l'espace que je reçois la paire 0xC2 0xA0 ce qui correspond à un « non-espace insécable blanc »

+0

Wow .... Je dois être fatigué. Vous avez dit dans votre question que vous avez essayé le tag META. Je verrai si je peux trouver autre chose. –

Répondre

0

Pourquoi vous utilisez des caractères ASCII pour l'entrée utilisateur? Vous n'êtes plus qu'à retarder un mal de tête énorme.

mais, pour répondre à votre question: si votre application attend ASCII, vous devez vérifier l'entrée d'utilisateur et le convertir en ASCII manuellement il semble que vous devez être vérifier chaque pression de touche et la conversion sur la volée avant même qu'elle soit rendue à. l'écran charset ne s'applique pas à l'entrée utilisateur, cela dépend des réglages spécifiques au système

Mais encore une fois: il suffit d'utiliser UTF-8

Questions connexes