vereis, mi problema consiste en lo siguiente, en mi aplicación hago una llamada mediante $.post(...) a un archivo php que me genera como respuesta un código xml
como el siguiente:
Código XML:
Luego, una vez recibida la respuesta mediante javascript proceso este string para obtener los datos con un código como el siguiente:Ver original
<?xml version='1.0' encoding='iso-8859-1'?> <articulo> <encontrado>1</encontrado> <descripcion>ARTICULO DE PRUEBA</descripcion> <detalle1> </detalle1> <detalle2> </detalle2> <precio>1.99</precio> <importe>1.99</importe> </articulo>
Código Javascript:
La llamada a $.post() sería así:Ver original
function(stringxml){ var articulo=$(stringxml); alert(articulo.find("descripcion").text(); }
Código Javascript:
Ver original
$.post("genera-xml.php",{dato1: val1, ... ,datoN: valN}, function(stringxml){...});
Pues bien, el problema que tengo es que mi código funciona a la perfección en todos los navegadores (modernos) excepto en internet explorer que no reconoce la respuesta como un código xml y al tratar de obtener los datos no devuelve nada.
También he probado a especificar en la llamada a $.post() que la respuesta obtenida será un xml, pero en ese caso se produce un error (ajaxError) y no me devuelve los datos (eso ocurre en todos los navegadores), el error que me muestra internet explorer es el siguiente:
TypeError: Se requiere un objeto.
En firefox:
TypeError: a is null
Aver si alguien sabe la solución y me puede echar una manita con el tema.
Un saludo