Javascript – Caracteres UTF8, ISO-8859-1 y UNICODE
Posted by Eduardo Martinsep 2
Mientras que trabajaba con una clase javascript para validar los campos de un formulario HTML personalizado dentro de WordPress, me encontré con algunos inconvenientes de caracteres ya que el código original estaba optimizado para el idioma inglés y yo necesitaba utilizar el castellano, por lo cual la solución muchas veces no es solo cambiar la codificació desde el HTML, sino también trabajar la codificación desde JavaScript usando códigos unicode.
Básicamente el código lo que hace es validar que lo que vaya en el campo sea solo texto. En en idioma castellano aparte de los caracteres típicos se deben tener en cuanta acentos y letras como la ñ, por lo que para agregarlo directamente en JavaScript una solución es:
Codigo original:
“regex”:”/^[a-zA-Z]+$/”,
Nuevo código con los agregados:
“regex”:”/^[a-zA-Z\ \'\u00e9\áéíóúÁÉÍÓÚñÑüÜ]+$/”,
Cuando probé nuevamente la validación del formulario, me encontré con el problema de que no funcionaba por lo que utilice la vista de código del navegador y me metí en el archivo javascript para ver como se estaba imprimiendo, el código, este se veía asi:
“regex”:”/^[a-zA-Z\ \'\u00e9\??????????????]+$/”,
Esto ocurrió ya que WordPress estaba seteado en UTF-8, por lo cual la solución fue buscar el codigo unicode de cada letra con acento y ponerlo de la siguiente manera cubriendo todas las posibilidades de caracteres que se usen en el español:
“regex”:”/^[a-zA-Z\ \'\u00e1\u00e9\u00ed\u00f3\u00fa\u00c1\u00c9\u00cd\u00d3\u00da\u00f1\u00d1\u00FC\u00DC]+$/”,
Tabla de caracteres unicodes necesarios:
\u00e1 -> á
\u00e9 -> é
\u00ed -> í
\u00f3 -> ó
\u00fa -> ú
\u00c1 -> Á
\u00c9 -> É
\u00cd -> Í
\u00d3 -> Ó
\u00da -> Ú
\u00f1 -> ñ
\u00d1 -> Ñ
\u00FC -> ü
\u00DC -> Ü
Espero le sirva a alguien.

5 comentarios
Comentario by Ignacio on octubre 26, 2010 at 1:47 pm
Muy bueno el aporte! me sirvió mucho
Pingback by Tweets that mention Javascript – Caracteres UTF8, ISO-8859-1 y UNICODE :digilabs.com.ar -- Topsy.com on febrero 4, 2011 at 8:15 pm
[...] This post was mentioned on Twitter by Willans Flores C., Erufenix Sanjuro T.. Erufenix Sanjuro T. said: Por si un día tienes pedos con Javascript y UTF8 u otra codificación te recomiendo http://j.mp/g0ONbp http://j.mp/iaUYRK [...]
Comentario by Mikasa on marzo 8, 2011 at 8:33 pm
Gracias por el aporte, tenía esta dificultad, pero en un script php
Comentario by Vicente B on agosto 30, 2011 at 5:51 pm
Gracias por tu comentario, resolvio mi problema con JavaScript no entendia por que no me funcionaban mis expresiones que usaban vocales acentuadas.
Comentario by luis on noviembre 3, 2011 at 7:16 am
gracias me sirvio nome validaba las ñ