Helló
Egy Ajax-os oldalon ügyködöm. A lényeg, hogy a szervertől XML-ben kapom meg a szükséges adatokat, ezeket áta adom a megfelelő javascrip-es osztályoknak ameleyek megjelenítik azokat.
Na már most, firefoxban és operában szépen működik is minden, de az IE-ben a szervertől megkapott XML adatok nem tudom feldolgozni.
a következő sor után jelentkezik a probléma:
var p = Ajax.getResponse().getElementsByTagName('news');
var x = p.length;
az FF-ben az x == a news nodo-k számával
az IE-ben az x == 0, minden esetben
Tehát a kérdésem az lenne, hogy hogyan tudom kinyerni az adtokat (hogyan tudok hozzáférni a megfelelő nodo-okhoz) IE-ben?
A segítséget előre is köszönöm.
az XML felépítése a következő:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <newscontent> <news newsid='161' more='1'> <title>...</title> <byline><![CDATA[...]]></byline> <content><![CDATA[...]]></content> </news> ... </newscontent>
továbbá beszúrom még az Ajax javascript osztályt is, a férreértések elkerülése végett
Ajax = {};
Ajax.makeRequest = function(method, url, callbackMethod){
this.x = "helo";
this.request = (window.XMLHttpRequest)? new XMLHttpRequest(): new ActiveXObject("MSXML2.XMLHTTP");
this.request.onreadystatechange = callbackMethod;
this.request.open(method, url, true);
this.request.send(url);
}
Ajax.checkReadyState = function(){
switch(this.request.readyState){
case 1:
return 'Loading ...';
break;
case 2:
return 'Loading ...';
break;
case 3:
return 'Loading ...';
break;
case 4:
AjaxUpdater.isUpdating = false;
return HTTP.status(this.request.status);
default:
return "An unexpected error has occurred.";
}
}
Ajax.getResponse = function(){
return ((this.request.getResponseHeader('Content-Type').indexOf('xml') != -1) ? this.request.responseXML : this.request.responseText);
}
- 718 megtekintés
Hozzászólások
Nem lenne egyszerubb valami frameworkot hasznalni? http://prototypejs.org/?
- A hozzászóláshoz be kell jelentkezni
nem kell ehhez framework, az ajax se nem tul bonyolult se nem tul nagy ahhoz hogy most frameworkoljon az ember (bar a feladattol fugg ami kinohet belole).
mindenesetre javaslom inkabb vegyen elo egy mukodo peldat a felado es probalja azt atirni
- A hozzászóláshoz be kell jelentkezni