Ajax Content in Document-Element laden

  • JavaScript

    Ajax Content in Document-Element laden

    Hallo,

    ich versuche gerade mittels Ajax ein Request auf eine HTML Seite zu machen. Den Quelltext möchte ich in eine Variable packen die ich genauso behandeln kann wie document. Also dass ich z.B. sowas wie doc.getElementById('wrapper'); machen kann. Mein momentaner Code

    JavaScript-Quellcode

    1. var httpRequest;
    2. function load() {
    3. httpRequest = new XMLHttpRequest();
    4. if(!httpRequest) {
    5. alert('Giving up :( Cannot create an XMLHTTP instance');
    6. return false;
    7. }
    8. httpRequest.onreadystatechange = requestReady;
    9. httpRequest.open('GET', 'loaded.html');
    10. httpRequest.send();
    11. }
    12. function requestReady() {
    13. if(httpRequest.readyState === 4) {
    14. var doc = document.implementation.createHTMLDocument("New Document");
    15. doc.open();
    16. doc.write(httpRequest.responseText);
    17. doc.close();
    18. alert(doc.getElementsByTagName('div').length);
    19. }
    20. }


    in httpRequest.responseText steht auch der entsprechende Content der loaded.html drin, aber beim Alert wird mir trotzdem eine 0 ausgegeben.

    loaded.html

    HTML-Quellcode

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. </head>
    5. <body>
    6. <div id="wrapper">
    7. BLAAA
    8. </div>
    9. </body>
    10. </html>


    Edit: Habs hinbekommen nach sehr sehr langer Suche und rumprobierens.

    So wird dem Document der HTML String zugewiesen.

    doc.documentElement.innerHTML = httpRequest.responseText;

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Dodo“ ()