Problem mit innerHTML im Internet Explorer

  • Themenstarter Themenstarter TobiNeu
  • Beginndatum Beginndatum
T

TobiNeu

So hab ich es bisher gelöst. Funktioniert leider nur im Firefox und nicht im Internet Explorer.

Code:
if (window.XMLHttpRequest) {			
  httpRequestObject = new XMLHttpRequest(); //Not IE
} else if(window.ActiveXObject) {
  httpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); //IE			
 }			

httpRequestObject.open('GET','/aaa/bbb?ACTION=default&xxx.key='+key,true); 				
httpRequestObject.send(null);	
httpRequestObject.onreadystatechange = function() {
  if( httpRequestObject.readyState == 4 ){										
    parent.document.getElementById('completeContent').innerHTML = httpRequestObject.responseText;
  }
}

Mein erster Versuch war:

Code:
var completeContent = parent.document.getElementById('completeContent');				
new Ajax.Updater(completeContent, '/aaa/bbb', {					
  method: 'GET',   
  parameters: {
          'ACTION': 'default', 
          'xxx.key': key 
  },
  asynchronous: true
});


Wäre klasse wenn mir jemand sagen könnte wo mein Fehler liegt.

Über Buchtips zu JavaScript Ajax würd ich mich auch freuen.
 
Hm ...

im Endeffekt bvrauch ich glaub nur ne alternative zu innerHTML:

also anstatt:
Code:
parent.document.getElementById('completeContent').innerHTML = httpRequestObject.responseText;

irgendwas in der Art:

Code:
parent.document.getElementById('completeContent').appendChild(httpRequestObject.responseText);

Leider komm ich noch nicht auf den richtigen Befehl.
Über Hilfe bin ich dankbar ;)

Grüße
 
Versuche mal bitte den Text mittels alert() auszugeben, anstelle ihn in das DIV zu packen. Es wäre gut zu wissen, ob der Text überhaupt ankommt.
 
Ich versuch mein Problem nochmals anschaulich darzustellen:

Ich habe eine index.html mit folgendem Aufbau:

Code:
	...
	<body>
	<div id="leftArea">
		<iframe id="tree" src="tree.html"></iframe>
	</div>
	<div id="mainContent">
		... blalalal ...
	</div>
	...
	</body>
	...

Nun habe ich eine tree.html die aus lauter links besteht, welche feste id's besitzen.
Nun soll bei klick auf den entsprechenden link eine javascript Funktion aufgerufen werden die den mainContent mit den entsprechenden Daten befüllt.
Die Funktion sieht wie folgt aus:

Code:
function refreshMainContent(id) {											
	new Ajax.Updater('mainContent', 'newContent', {					
		method: 'post', 
		parameters: {		
			'ACTION': 'default', 
			'contentID': id 
		},
		asynchronous: true
	});
}

Mein Problem ist er läd es einfach nicht in den mainContent und ich wei nicht wieso.
Ich habs auch schon mit foglendem versucht:

Code:
function refreshMainContent(id) {											
	new Ajax.Updater(parent.mainContent, 'newContent', {					
		method: 'post', 
		parameters: {		
			'ACTION': 'default', 
			'contentID': id 
		},
		asynchronous: true
	});
}

Ging aber leider auch nicht.

Grüße
 
Was kommt als Antwort an/ was würde beispielsweise in maincontent eingefügt werden sollen?
 
eine komplette HTML-Seite würd ich dort gerne anzeigen lassen.
Ankommen tut garnichts.
 
also inkl. <html><head><body>?

Falls ja, versuche diese Dinge weg zu lassen.
 

Neue Beiträge

Zurück