Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#1

Nochmal AJAX: Zugriff auf DOM einer nachgeladenen Seite?

  Alt 21. Jul 2006, 13:17
Sodele.. immer noch mein Ajax-Problem, diesmal bin ich aber im richtigen Scope

Also, von einem AJAX-Request bekomme ich (zwingend!) folgende Antwort. Ich brauche aus diesem (X)HTML-Dokument nun ein Element-Objekt, und zwar vom <div id="ResultTreeView">. Dann kann ich damit weiterarbeiten.

Leider hilft mir Google hier nicht weiter.

Also, ich habe ein xmlhhtp.responseText bzw. .responseXML, und wie muss ich da jetzt weitermachen? responseXML.getElementsByTagName("div") liefert zum Beispiel eine Liste mit 0 elementen zurück, ich weiss absolut nicht mehr weiter (

XML-Code:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head><title>
   Suchergebnisse
</title><link type="text/css" href="_css/default.css" rel="stylesheet" /><link type="text/css" rel="stylesheet" href="/SiteTracker/RadControls/TreeView/Skins/Square/3DBlue/Style.css" /></head>
<body>
    <form name="form1" method="post" action="SearchPage.aspx?State=All&amp;IncludeDeletedSites=false" id="form1">
<div>
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
</div>

<script type="text/javascript">
<!--
var theForm = document.forms['form1'];
if (!theForm) {
    theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
// -->

</script>


    <div id="ResultTreeView">
        <div id="ResultTree_wrapper">
   <script type="text/javascript" src="/SiteTracker/RadControls/TreeView/Scripts/5_3_0/RadTreeView.js"></script>
   
   </div>
    </div>
    </form>
</body>
</html>
Edit Nachtrag:

responseXML ist da, responseXML.parseerror ist undefined (also alles i.O. für mich), aber dennoch ist childNodes.length = 0.

Es kommt im übrigen ein einwandfreies X(HT)ML-Dokument validiert gegen
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd heraus (Wenn ich mir die Response in einem neuen Browserfenster anzeigen lasse geht der IE in die XML-Dartsellung, auch XMLSpy validiert einwandfrei).

Was kann ich da noch machen??
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat