webForumDet fria alternativet

Problem med Ajax och IE

3 svar · 494 visningar · startad av andreaswebb

andreaswebbMedlem sedan apr. 2003111 inlägg
#1

Hej på er!

Jag har en PHP-genererad XML-sida (http://tid.williamsons.se/new/getdata.php?vecka=56). För varje <jobb> skapar jag en ny tabell med hjälp av DOM. Detta fungerar utmärkt i FF med IE (både 6 & 7) är inte samarbetsvillig. IE säger att jobb.length har värden 0. Finns det något sätt att lösa detta på?

Mitt javascript:

function getJobb(strAddr) {
	
	createHttpRequest();
	
	
	//Gör laddar-bilden synlig
	toggleVisibility("spinner1");
	
	http_request.onreadystatechange = function() { 
		
		//Om laddningen är klar
		if(http_request.readyState == 4) {
			
			//Om sidan är OK
			if(http_request.status == 200) {
				
				var xmldoc = http_request.responseXML;
				var root = xmldoc.getElementsByTagName("root")[0];
				var jobb = xmldoc.getElementsByTagName("jobb");
				
				//För varje jobb, skapa tabell med innehåll	
				for(i=0;i<antal;i++) {
					
					var table = document.createElement("table");
					var row = document.createElement("tr");
					var col = document.createElement("td");
					var text = document.createTextNode(jobb[i].getAttribute("id"));
												
					table.setAttribute("cellpadding", "0");
					table.setAttribute("cellspacing", "0");
					table.style.width = "998px";
					table.style.margin = "0px;";
					
					row.style.height = "20px";
					
					//col.style.width = "1000px";
					col.style.borderBottom = "2px solid #FFF";
					col.style.backgroundColor = jobb[i].getAttribute("bgcolor");
					
					col.appendChild(text);
					row.appendChild(col);
					table.appendChild(row);
					
					document.getElementById("jobb").appendChild(table);
					
				}
				
				//Gömmer laddar-bilden
				toggleVisibility("spinner1");
				
			} else {
			
				alert("There was a problem with the request!");
				return false;
				
			}
			
		} 
		
	}
	
	http_request.open('GET',strAddr, true);
	http_request.send(null);

	
}

Tackar på förhand!

andreaswebbMedlem sedan apr. 2003111 inlägg
#2

Kan tillägga att jag nu har testat med att göra en XML-fil med liknande innehåll och jag får inte det fungera heller.

nitro2k01Medlem sedan aug. 20037 630 inlägg
#3

Vild gissning: Pröva

var jobb = root.getElementsByTagName("jobb");
andreaswebbMedlem sedan apr. 2003111 inlägg
#4

Har testat det, IE säger då att objektet är NULL. Firefox klarar av att att köra scriptet oberoende av hur jag skriver.

Genererad på 371 ms · cache AV · v20260730165559-full.f96bc7eb