Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problemas con tildes y eñes

Estas en el tema de Problemas con tildes y eñes en el foro de Frameworks JS en Foros del Web. Que tal, tengo un problema con las tildes y las eñes. Estoy generando un xml con php para leerlo con javascript en el navegador. Todo ...
  #1 (permalink)  
Antiguo 20/11/2006, 10:44
 
Fecha de Ingreso: noviembre-2006
Mensajes: 2
Antigüedad: 17 años, 5 meses
Puntos: 0
Problemas con tildes y eñes

Que tal, tengo un problema con las tildes y las eñes.

Estoy generando un xml con php para leerlo con javascript en el navegador.

Todo funciona de maravilla, si el xml no contiene caracteres acentuado o eñes como en el siguiente ejemplo:

Código:
<root>
  <Registro>
    <Nombre>Id</Nombre>
    <Descripcion>No</Descripcion>
    <Id>1</Id>
  </Registro>
</root>
Pero al momento de que tenga un caracter acentuado, me salia un error de que la entidad estaba indefinida. Según estuve investigando, era por que solo hay como 5 entidades válidas en XML, por tanto una é (&eacute;) no me la aceptaba.

Entonces lo que hice fue declarar todas las entidades que necesitaba en una sección DOCTYPE :

Código:
<!DOCTYPE root [
<!ENTITY aacute "á">
<!ENTITY eacute "é">
<!ENTITY iacute "í">
<!ENTITY oacute "ó">
<!ENTITY uacute "ú">
<!ENTITY Aacute "Á">
<!ENTITY Eacute "É">
<!ENTITY Iacute "Í">
<!ENTITY Oacute "Ó">
<!ENTITY Uacute "Ú">
<!ENTITY ntilde "ñ">
<!ENTITY Ntilde "Ú">
]><root>
  <Registro>
    <Nombre>Id</Nombre>
    <Descripcion>No</Descripcion>
    <Id>1</Id>
  </Registro>
  <Registro>
    <Nombre>FechaDeEmision</Nombre>
    <Descripcion>Fecha De Emisi&oacute;n</Descripcion>
    <Id>5</Id>
  </Registro>
<root>
Por lo que entiendo, esto lo que hace es sustituir las entidades html por sus respectivos codigos unicode.

Eso me arreglo el problema, pero ahora cuando hay un valor terminado en tilde, por ejemplo aqui que deberia salio Fecha De Emisió:

Código:
  <Registro>
    <Nombre>FechaDeEmision</Nombre>
    <Descripcion>Fecha De Emisi&oacute;</Descripcion>
    <Id>5</Id>
  </Registro>
deja de leer el xml, usando try catch, me sale el sicuiente error:

Código:
 
TypeError: reg.getElementsByTagName('Id')[0].firstChild has no properties
Es decir, como la tag <Descripcion> contiene una cadena que termina con el caracter é, por alguna razón hace que la siguiente etiqueta, <Id>, no se pueda leer. Sin embargo la etiqueta tiene valor, que es el 5.

Alguna idea?
  #2 (permalink)  
Antiguo 23/11/2006, 19:34
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años
Puntos: 35
loading.....


para eso usa siempre

<![CDATA[cadena]]>

<Nombre>FechaDeEmision</Nombre>
<Descripcion><![CDATA[Fecha De Emisi&oacute;]]</Descripcion>
<Id>5</Id>
</Registro>


http://www.w3schools.com/xml/xml_cdata.asp




connection closed.
__________________

Maborak Technologies
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:00.