Quiero comprobar si una cadena enviada por el usuario es igual a la cadena en mi clave de respuesta. Algunas veces las palabras involucran acentos en español (como en sábado), y eso hace que la condición siempre sea falsa.Acentos JavaScript/HTML/Unicode: á! = Á
Tengo registro de Firebug $('#answer').val()
y aparece como sábado
. (El á
proviene de un botón que inserta el valor á
, si eso importa) mientras que el registro de la respuesta de la tecla de respuesta muestra sábado
(cómo lo escribí en la clave de respuesta real).
He intentado reemplazar el á
en la clave de respuesta con un á
normal, pero todavía no funciona, y da como resultado una marca de interrogación de diamante Unicode. Cuando lo hago y también reemplazo el valor del botón que hace á
enviado por el usuario, la condición funciona correctamente, pero luego el botón, la cadena del usuario y la cadena de respuesta tienen el extraño signo de interrogación de diamante Unicode.
También he intentado usar á
en ambos lugares y no es diferente de usar á
. Tanto mi HTML como Javascript están usando charset="utf-8"
.
¿Cómo puedo solucionar esto?
¿Puede dar alguna muestra en jsfiddle.net ? –
Parece que en un caso estás comparando 's & aacute; bado' con' sábado', que es, por supuesto, 'falso'. En otro caso, está comparando 's bado' con' sábado', que también es 'falso'. Parece un problema simple de codificación ...? – deceze
¿Qué devuelve esa propiedad '.length' de cada cuerda? ¿Qué tal '' CarAt (1) '? – Gabe