Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/01/2006, 14:02
tolkaia
 
Fecha de Ingreso: enero-2006
Mensajes: 1
Antigüedad: 18 años, 4 meses
Puntos: 0
El código de la página web me desaparece con HTTPRequest

Hola a todos.

Soy un webmaster aficionado, y estoy iniciándome en el Ajax tras la reforma de una web que mantengo yo. He creado dos pequeñas bases de datos en XML y de momento accedo a ellas con:

var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.4.0");

Pero claro, esto sólo funciona en IE, así que me decidí a probar el HTTPRequest. He conseguido que me lea los datos en IE y Mozilla, pero en ningún navegador me muestra bien la información en pantalla. En ambos me desaparece todo o parte del código HTML, y o bien me aparece pantalla sólo lo que envía el JavaScript con "document.write", o bien sale mal la información en pantalla porque se come algún "div", por ejemplo. Este es el código de marras:

var isIE = false;
var req;
function loadXMLDoc(url) {
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send(null);
// branch for IE/Windows ActiveX version
} else if (window.ActiveXObject) {
isIE = true;
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send();
}
}
}

// handle onreadystatechange event of req object
function processReqChange() {
// only if req shows "loaded"
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
Proces();
} else {
alert("Problema llegint les notícies:\n" +
req.statusText);
}
}
}

function Proces() {
var xmlDoc = req.responseXML;
var Noticies = xmlDoc.getElementsByTagName("NOTICIA");
if(id==0) { //Titulars
ExActual = "";
for(var i=0;i<Noticies.length;i++) {
var Noticia = Noticies[i];
var idNoticia = Noticia.getAttribute("ID");
var Data = Noticia.getElementsByTagName(itData)[0].firstChild.nodeValue;
var ExData = Exercici(Data);
var Titular = Noticia.getElementsByTagName(itTitular)[0].firstChild.nodeValue;
if(ExActual!=ExData) {
document.write('<h3 class="feature">'+msgTitulars+ExData+'</h3>');
}
ExActual = ExData;
document.write('<p class="feature">· <strong><a href="noticies'+ftxNoticies+'.html?id=' + idNoticia+'">' + Titular + '</a></strong><span class="datanot"> ['+Data+']</span></p>');
}

La dirección de la página (de prueba, claro) es:

club.telepolis.com/fallajmh/llibret/noticies9.html

Si alguien me pudiera decir qué pasa, se lo agradecería enormemente.

Saludos.


Tolkaia