Retroceder   Foros del Web > Programación para sitios web > AJAX

Respuesta
 
Herramientas Desplegado
Antiguo 07-nov-2006, 06:13   #1 (permalink)
karide está en el buen camino
 
Fecha de Ingreso: septiembre-2005
Ubicación: Ourense
Mensajes: 16
responseXML.getElementsByTag() no funciona

Hola mi problema es el siguiente cuando hago:
var x = miajax.responseXML.getElementsByTag('pobla');
x es nulo, no doy encontrado el modo de que funcione con explorer veo que el codigo xml en principio esta bien (http ://w ww.inmueblevirtual.net/ajax/concellosmenu.php?seleccionado=Victor) puesto que devuelve tanto en el navegador como si en lugar de un responseXML hago un responseText:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<xml>
<pobla>
<valor>uno</valor>
<nome>uno</nome>
</pobla>

<pobla>
<valor>dos</valor>
<nome>dos</nome>
</pobla>
</xml>




Espero q alguien pueda ayudarme
karide está desconectado   Responder Citando
Antiguo 09-nov-2006, 10:24   #2 (permalink)
zaqpz está en el buen camino
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentina, Capital Federal
Mensajes: 390
Enviar un mensaje por MSN a zaqpz
¿Estás intentando capturar el valor que traen tus nodos? Puede que este ejemplito te sea de utilidad [PHP+AJAX] Pasar variables...

Saludos.
__________________
R4DS en español | R4DS en inglés
zaqpz está desconectado   Responder Citando
Antiguo 09-nov-2006, 11:25   #3 (permalink)
NzO
NzO ha deshabilitado el karma
 
Avatar de NzO
 
Fecha de Ingreso: abril-2005
Mensajes: 134
Si lo generas con php/asp/jsp tienes que especificar la cabecera. Quiza sea eso...
__________________
NzO=EnZo
isiAJAX & isiXML hechos el uno para el otro.
NzO está desconectado   Responder Citando
Antiguo 10-nov-2006, 05:29   #4 (permalink)
karide está en el buen camino
 
Fecha de Ingreso: septiembre-2005
Ubicación: Ourense
Mensajes: 16
Gracias ya lo habia solucionado, el problema era en explorer que no obtiene bien los xml lo arregle con un archivo q encontre en google "copy.xsl".
karide está desconectado   Responder Citando
Antiguo 17-abr-2007, 08:33   #5 (permalink)
zyon ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2005
Mensajes: 960
Re: responseXML.getElementsByTag() no funciona

que onda, quisiera retomar este tema io, trato de ver lo que me manda el responseXML con un alert y solo me lo manda vacio, si puedo ver el resultado del reponseXML con un alert?
__________________
Wow! No se que decir...
zyon está desconectado   Responder Citando
Antiguo 17-abr-2007, 18:48   #6 (permalink)
MaBoRaK llegará a ser famoso muy prontoMaBoRaK llegará a ser famoso muy pronto
 
Avatar de MaBoRaK
 
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 1.782
Enviar un mensaje por MSN a MaBoRaK
Re: responseXML.getElementsByTag() no funciona

loading..........

var x = miajax.responseXML.getElementsByTag('pobla');

var x = miajax.responseXML.getElementsByTagName('pobla');

Para ver el XML solo haces, alert(miajax.responseText)


connection closed.
__________________
maborak@maborak.com
http://www.maborak.com
Maborak technologies
MaBoRaK está desconectado   Responder Citando
Antiguo 18-abr-2007, 07:15   #7 (permalink)
zyon ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2005
Mensajes: 960
Re: responseXML.getElementsByTag() no funciona

si, asi lo puedo ver, pero me el alert sale muy amplio, como si leyera el espacio que ocupa el JAVA y me muestra el XML hasta abajo del alert... intento mandar un alert(ajax.responseXML); pero me lo manda vacio y probe la linea :

var x = ajax.responseXML.getElementsByTagName('campo1');

pero me la manda vacia, entonces no se si el AJAX me recive lo que manda el JSP que crea el AJX presizamente como un Objeto AJAX, mande a llamar directo el JSP y esto me mostro:

Código HTML:
<?xml version="1.0" encoding="ISO-8859-1" ?> 
- <datos>
  <campo1>001</campo1> 
  <campo2>Josue</campo2> 
  <campo3>Informática</campo3> 
  <campo4>si</campo4> 
  <campo5>no</campo5> 
  </datos>
y esta es mi funcion, pero no se que pasa, alguna idea?

Código HTML:
function MostrarConsulta(datos){

        divResultado = document.getElementById('resultado');
        var id=document.getElementById("idm"); 
        var nom=document.getElementById("nombrem"); 
        var dep=document.getElementById("deptom"); 
        var a=document.getElementById("am"); 
        var b=document.getElementById("bm"); 
        
        ajax=objetoAjax();
        ajax.open("POST", datos,true);
        //ajax.overrideMimeType("text/xml"); 
        //ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        ajax.onreadystatechange=function() {
               if (ajax.readyState==4) {
                if(ajax.status==200){
                       var vari = ajax.responseXML;
                       alert(ajax.responseTEXT);
                       alert( typeof(ajax.responseXML) );
                       alert('vari - '+vari+'-');
                       var x = ajax.responseXML.getElementsByTagName("campo1"); 
                       alert('x - ' + x);
                       //id.value = vari.getElementsByTagName("campo1")[0].childNodes[0].data; 
                       //nom.value = vari.getElementsByTagName("campo2")[0].childNodes[0].data; 
                       //dep.value = vari.getElementsByTagName("campo3")[0].childNodes[0].data; 
                       //a.value = vari.getElementsByTagName("campo4")[0].childNodes[0].data; 
                       //b.value = vari.getElementsByTagName("campo5")[0].childNodes[0].data; 
                       //window.alert(id+"\n"+nom+"\n"+dep+"\n"+a+"\n"+b);
                       alert('paso');
                }
               }
        }
        ajax.send(null)
}
__________________
Wow! No se que decir...
zyon está desconectado   Responder Citando
Antiguo 18-abr-2007, 08:38   #8 (permalink)
MaBoRaK llegará a ser famoso muy prontoMaBoRaK llegará a ser famoso muy pronto
 
Avatar de MaBoRaK
 
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 1.782
Enviar un mensaje por MSN a MaBoRaK
Re: responseXML.getElementsByTag() no funciona

loading............


<campo3>Informática</campo3 <-- este es el problema, debes hacerle un specialchars, osea los acentos con &aacute;



connection closed.
__________________
maborak@maborak.com
http://www.maborak.com
Maborak technologies
MaBoRaK está desconectado   Responder Citando
Antiguo 18-abr-2007, 09:29   #9 (permalink)
zyon ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2005
Mensajes: 960
Re: responseXML.getElementsByTag() no funciona

ok, no havia pensado en eso, pero tambien lo he probado con datos que no me trae caracteres especiales... de hecho ya probe dos casos de usar XML, uno generado con un JSP :

Código HTML:
<%@ taglib uri="WEB-INF/taglibs-dbtags.tld" prefix="sql"%>
<%@ page import = "java.text.*" %>

<%@ include file="../connect.jsp" %>

<sql:connection id="conn">
    <sql:userId><%=ConnUser%></sql:userId>
    <sql:password><%=ConnPass%></sql:password>
    <sql:url><%=ConnUrl%></sql:url>
    <sql:driver>com.microsoft.jdbc.sqlserver.SQLServerDriver</sql:driver>
</sql:connection>

<%
String Tipo=(request.getParameter("tipo")==null)?"":request.getParameter("tipo");
%>

<%if(Tipo!=null){

    if(Tipo.equals("mostrar")){
        String xml="";
        String IDE=(request.getParameter("ide")==null)?"":request.getParameter("ide");

        xml="<?xml version='1.0' encoding='ISO-8859-1'?>";
        xml=xml+"<datos>";%>
    <%--Extraigo el nombre del Usuario Creador  --%>
    <sql:statement id="stmtCrea" conn="conn">
    <sql:query>
        select campo1,campo2,campo3,campo4,campo5 from ajaxprueba where campo1='<%=IDE%>'
    </sql:query>
    <sql:resultSet id="crea">
     <% 
        xml=xml+"<campo1>"+crea.getString(1)+"</campo1>";
        xml=xml+"<campo2>"+crea.getString(2)+"</campo2>";
        xml=xml+"<campo3>"+crea.getString(3)+"</campo3>";
        xml=xml+"<campo4>"+crea.getString(4)+"</campo4>";
        xml=xml+"<campo5>"+crea.getString(5)+"</campo5>";
%>
    </sql:resultSet>
    </sql:statement>
    <%
        xml=xml+"</datos>";
        response.setContentType("text/xml");
        out.print(xml);
        
    }
}//Fin de null...%>

<sql:closeConnection conn="conn"/>
pero en ninguno de los dos casos me funciono el responseXML :( que puedo hacer?
__________________
Wow! No se que decir...
zyon está desconectado   Responder Citando
Antiguo 18-abr-2007, 12:21   #10 (permalink)
MaBoRaK llegará a ser famoso muy prontoMaBoRaK llegará a ser famoso muy pronto
 
Avatar de MaBoRaK
 
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 1.782
Enviar un mensaje por MSN a MaBoRaK
Re: responseXML.getElementsByTag() no funciona

loading............


Y porque a otros si les funciona? :p, es tu fracaso contra los exitos de millones jejeje.


connection closed.
__________________
maborak@maborak.com
http://www.maborak.com
Maborak technologies
MaBoRaK está desconectado   Responder Citando
Antiguo 18-abr-2007, 15:33   #11 (permalink)
zyon ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2005
Mensajes: 960
Re: responseXML.getElementsByTag() no funciona

mm eso no me alienta mucho :(, no cras que no me siento como tonto, pero es que enserio, puedo hacer ejemplos cualquiera con el responseTEXT, pero el miserable responseXML no me da una sola, ni probandolo con algo simple...y ya me siento fustrado, por eso es que ando casi rogando que me ayuden aunque sea con un ejemplo de ustedes en el que esten seguros que funciona y me lo pasen para probarlo io, no es posible que afecte el navegador que tengo o algo mas?
__________________
Wow! No se que decir...
zyon está desconectado   Responder Citando
Antiguo 19-abr-2007, 14:54   #12 (permalink)
MaBoRaK llegará a ser famoso muy prontoMaBoRaK llegará a ser famoso muy pronto
 
Avatar de MaBoRaK
 
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 1.782
Enviar un mensaje por MSN a MaBoRaK
Re: responseXML.getElementsByTag() no funciona

loading........


Bueno, probaste tus ejemplos con firefox y su extension firebug? talvez tu XML está mal parseado, y ahi te dirá que le falta (consola de errores) tambien podras ver si realmente recibes el XML.... o mejor aun SUBELO A UN SERVER Y MOSTRANOS.


connection closed.
__________________
maborak@maborak.com
http://www.maborak.com
Maborak technologies
MaBoRaK está desconectado   Responder Citando
Antiguo 19-abr-2007, 15:35   #13 (permalink)
zyon ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2005
Mensajes: 960
Re: responseXML.getElementsByTag() no funciona

ya lo resolvi, mi problema era que realmente no ponia de encabezado el <?xml version="1.0" encoding="UTF-8"?> si no como una asignación a una variable, enton ces por eso no me lo tomaba, solo era eso, fue error mio, crei que seria lo mismo si lo poni <%String XML="<?xml version="1.0" encoding="UTF-8"?>";%>, pero en fin, muchas gracias por su tiempo y ayuda!!!
__________________
Wow! No se que decir...
zyon está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 23:05.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93