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

problema con req.responseXML.getElementsByTagName

Estas en el tema de problema con req.responseXML.getElementsByTagName en el foro de Frameworks JS en Foros del Web. Hola, ya he usado AJAX otras veces con estructuras de XML más grandes y todo me funciona bien. Mi duda es cuando tengo un XML ...
  #1 (permalink)  
Antiguo 25/09/2005, 16:14
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
problema con req.responseXML.getElementsByTagName

Hola,

ya he usado AJAX otras veces con estructuras de XML más grandes y todo me funciona bien.
Mi duda es cuando tengo un XML muy simple
Os pongo un ejemplo
Este es el XML que genero:
Código:
<price>234243</price>
cómo puedo obtener ese valor?
intento con esto pero no me funciona:
Código:
req.responseXML.getElementsByTagName("price")[0].childNodes[0].nodeValue
alguna idea?

muchas gracias

PD: enhorabuena por la web
  #2 (permalink)  
Antiguo 26/09/2005, 12:26
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 7 meses
Puntos: 35
loading...........

debs referirte


req.getElementsByTagName('price').item(0).firstChi ld.data;



connection closed.
__________________

Maborak Technologies
  #3 (permalink)  
Antiguo 26/09/2005, 13:02
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
gracias por tu ayuda, pero sigue sin funcionarme

cuando pongo esto
Código:
req.responseXML.getElementsByTagName('price').item(0).firstChild.data
el error que me da (en firefox) es el siguiente:
Error: req.responseXML.getElementsByTagName("price").item (0) has no properties

alguna idea?

gracias.
  #4 (permalink)  
Antiguo 26/09/2005, 15:34
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 7 meses
Puntos: 35
loading..................


Muestra tu código completo o parte del proceso, no solo la línea. talvez haces algo mal.

porque a mi me funciona de esa manera.


connection closed.
__________________

Maborak Technologies
  #5 (permalink)  
Antiguo 26/09/2005, 15:51
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
ante todo muchas gracias

here it is:

Código:
var req;

function initRequest(url) {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
}



function calculateResult() {
    var url = "lib/ajax.php?material=" + document.getElementById("materialid")+
    					"&size="+ document.getElementById("sizeid")+
    					"&side1Colour="+ document.getElementById("side1Colourid")+
    					"&side2Colour="+ document.getElementById("side2Colourid")+
    					"&SPS="+ document.getElementById("SPSid")+
    					"&finishing="+ document.getElementById("finishingid")+
    					"&frontCover="+ document.getElementById("frontCoverid")+
    					"&backCover="+ document.getElementById("backCoverid")+
    					"&sets="+ document.getElementById("setsid");
    initRequest(url);
    req.onreadystatechange = processRequest;
    req.open("GET", url, true); 
    req.send(null);
}


function processRequest() {
    if (req.readyState == 4) {
        if (req.status == 200) {

					//document.getElementById("resultid").innerHTML  = req.responseXML.getElementsByTagName("price")[0].childNodes[0].nodeValue;
					alert('aa');
					alert(req.responseXML.getElementsByTagName('price')[0].item(0).nodeValue);
  				//alert(req.responseXML.getElementsByTagName('price')[0].firstChild);
       }
    }
}
  #6 (permalink)  
Antiguo 26/09/2005, 16:20
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 7 meses
Puntos: 35
loading.........


y la parte del servidor?



connection closed.
__________________

Maborak Technologies
  #7 (permalink)  
Antiguo 26/09/2005, 16:25
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 7 meses
Puntos: 35
loading.........


Código PHP:
function processRequest() {
    if (
req.readyState == 4) {
        if (
req.status == 200) {
xxxx=req.responseXML
        alert
(xxxx.getElementsByTagName('price').item(0).firstChild.data);
       }
    }


haber asi?


connection closed
__________________

Maborak Technologies
  #8 (permalink)  
Antiguo 26/09/2005, 16:30
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
parte del servidor:
Código:
...
...
	$total = $materialCosts + $coverCosts + $finishingCosts + $copyCostTotal + $deliveryCost;

	// pound = £


	$xml = "<?xml version='1.0' standalone='yes'?>";
	$xml = $xml."<price>£".$total."</price>";
	header('Content-Type: text/xml'); 
	echo utf8_encode($xml);
  #9 (permalink)  
Antiguo 26/09/2005, 20:46
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 20 años, 5 meses
Puntos: 4
el header no se debe enviar antes de $xml = "<?xml version='1.0' standalone='yes'?>"; ???
__________________
Internet Explorer SuckS
Download FireFox
  #10 (permalink)  
Antiguo 27/09/2005, 00:40
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
de hecho es lo que estoy haciendo, fíjate:

Código PHP:
    $xml = "<?xml version='1.0' standalone='yes'?>";
    $xml = $xml."<price>£".$total."</price>";
    header('Content-Type: text/xml'); 
    echo utf8_encode($xml);
lo defino antes, pero lo mando después
  #11 (permalink)  
Antiguo 27/09/2005, 20:31
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 20 años, 5 meses
Puntos: 4
tengo el mismo problema ahora......
__________________
Internet Explorer SuckS
Download FireFox
  #12 (permalink)  
Antiguo 28/09/2005, 01:23
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
vaya, pues parece que el problema estaba en otro sitio...

no le encuentro explicación al problema, voy a abrir otro post para comentarlo
  #13 (permalink)  
Antiguo 28/09/2005, 01:37
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Hola:

Para obtener un dato simple (me funciona sin problemas en los 3 navegadores donde lo he probado):

req.responseXML.documentElement.getElementsByTagNa me("price")[0].firstChild.data

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #14 (permalink)  
Antiguo 28/09/2005, 01:39
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
sí, ya he visto que eso funciona correctamente, por lo visto el problema está en otro sitio (he abierto un post nuevo)

http://www.forosdelweb.com/f127/xml-creado-no-simplemente-texto-plano-337219/

muchas gracias por la ayuda.
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 02:33.