php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.01.2011, 09:30  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard ajaxRequest.responseXML wirft eine fehlermeldung

Guten Morgen allerseits,

und zwar bin ich grad dabei so etwas wie eine Lightbox zu programmieren, der Sinn ist aber nicht wirklich so ein riesen Ding neu zu erfinden, ist nur ne kleine Übung, die nur an einem kleinen Pubkt noch hängt.

Wer will kann sich das hier mal zum testen anschauen http://www.lit-web.de/votebox_tests/vote_box.html

Das einblenden eines abgedunkelten DIVS ins DOM funktioniert ohne Problem, so nun will ich eben dazu noch ein kleines Formular mit einblenden und dieses will ich per AJAX laden (das hat seinen Grund). Nun bekomme ich in der Konsole folgende Fehlermeldung.

Zitat:
Fehler: ajaxRequest.responseXML is null
Quelldatei: http://www.lit-web.de/votebox_tests/vote_box.js
Zeile: 72
Hier mal der JS Code dazu, alles andere könnt ihr ja anhand des Links erfahren wenn es denn nötig ist.

Code:
function getInnerWindowSize() {
    var blendWidth;
    var blendHeight;
        
    if ( window.innerWidth ) {
        blendWidth = ( window.innerWidth - 17 );
        blendHeight = window.innerHeight;
    } else {
        blendWidth = window.document.clientWidth;
        blendHeight = window.document.clientHeight;
    }
            
    return{ blendWidth:blendWidth, blendHeight:blendHeight };
};
        
function lightBoxBackground () {
    var windowSize = getInnerWindowSize();
    var attributeObjekt = { 'id':'blender', 'class':'blend' };
    var attributes = attributeObjekt;
    var blendDiv = document.createElement( "div" );
    document.body.appendChild( blendDiv );
        
    for ( var attr in attributeObjekt ) {
        blendDiv.setAttribute( attr, attributeObjekt[attr] );
    }
            
    document.getElementById( "blender" ).style.width = windowSize.blendWidth + "px";
    document.getElementById( "blender" ).style.height = windowSize.blendHeight + "px";
            
    document.getElementById( "blender" ).onclick = function () {
        document.body.removeChild( document.getElementById( "blender" ) );
    }
    
    return{ blendDiv:blendDiv }
};

/*
*
*    ajax element loader
*
*/
function createXMLHttpRequest () {
                
    var req;
                
    if ( window.XMLHttpRequest ) {
        try {
            req = new XMLHttpRequest();
        } catch ( e ) {
            req = false;
        }
    } else if ( window.ActiveXObject ) {
        try {
            req = new ActiveXObject( "Microsoft.XMLHTTP" );
        } catch ( e ) {
            req = false;
        }
    }
                
    return req;
}

function blendFormElementRequest () {
    var ajaxRequest = new createXMLHttpRequest();
    var loadFormNode = lightBoxBackground();
    
    ajaxRequest.onreadystatechange = function () {
        
        if ( this.readyState == 4 ) {
            
            if ( document.importNode ) {
                var formNode = document.importNode( ajaxRequest.responseXML.documentElement, true );
            } else {
                var formNode = document.cloneNode( ajaxRequest.responseXML.documentElement, true );
            }
            
            loadFormNode.blendDiv.appendChild( formNode );
        }
    }
    
    ajaxRequest.open(
                    "GET",
                    "http://localhost/Parkatikum_Sedna_Soft/Javascript_Uebungen/votebox_tests/testform.html"
                );
    ajaxRequest.send();
}
            
window.onload = function () {
    document.getElementById( "blendLink" ).onclick = lightBoxBackground;
    document.getElementById( "blendLink" ).onclick = blendFormElementRequest;
}
In der Funktion lightBoxBackground() wird der Hintergrund erstellt (klappt wie es soll). Da ich den dann brauche in der Funktion blendFormElementRequest(), gebe ich da das Element in einem Objektliteral zurück und weise die Funktion dann der Variablen loadFormNode in der Funktion blendFormElementRequest() zu. So meines Erachtens nach müsste ich da ja nun Zugriff auf den Div haben der eingeblendet wird. Da will ich nun das Formular mittels AJAX ajaxRequest.responseXML rein laden.

Ergebnis ist wie oben im Zitat stehende Fehlermeldung.

Was mache ich falsch und was müsste ich anders machen? Ich stolper bei JS immer wieder über Steine. Suchen brachte auch nichts.

Danke für eure Hilfe.

Gruß Litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.01.2011, 10:06  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Schau mal was in ajaxRequest.status steht - vermutlich nicht 200.
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 07.01.2011, 12:22  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

ich kann mir das leider nicht anschauen da dein script einen ajax request auf localhost macht..
aber gib mal responseText ein.. will mal schauen was da rauskommt.. eventuell ist ja xml net valide oder so.. reine vermutung und müsste nicht die datei, die du aufrufst mit .xml enden?

MFG
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen

Geändert von BlackScorp (07.01.2011 um 12:27 Uhr).
BlackScorp ist offline   Mit Zitat antworten
Alt 07.01.2011, 13:02  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von BlackScorp Beitrag anzeigen
ich kann mir das leider nicht anschauen da dein script einen ajax request auf localhost macht..
aber gib mal responseText ein.. will mal schauen was da rauskommt.. eventuell ist ja xml net valide oder so.. reine vermutung und müsste nicht die datei, die du aufrufst mit .xml enden?

MFG
Stimmt hbe das grad geändert, jetzt kannst du da schauen. Danke
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline   Mit Zitat antworten
Alt 07.01.2011, 13:10  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

naja du hast garkein xml desswegen ist es null.. du erhälst html als rückgabe.. desswegen verwende responseHTML

sihe hier http://img210.imageshack.us/img210/9726/htmlx.jpg
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen

Geändert von BlackScorp (07.01.2011 um 13:14 Uhr).
BlackScorp ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
include Fehlermeldung ask199 PHP Tipps 2010 10 27.05.2010 10:21
[Erledigt] fehlermeldung soll oben angezeigt werden gini0_8 PHP Tipps 2010 13 08.02.2010 19:34
[Erledigt] MSSQL MOD Fehlermeldung? Crowz Datenbanken 1 15.01.2010 09:02
pflichtfelder nicht ausgefüllt - fehlermeldung und formular zurückgeben phoenix2608 Datenbanken 8 12.08.2009 09:17
Fehlermeldung MySql michi11 Datenbanken 2 12.05.2009 19:57
Fehlermeldung : Call to a member function foo() on a non-object Mark Taylor PHP Tipps 2008 4 14.09.2008 20:38
Fehlermeldung umbenennen Soese PHP Tipps 2007 3 13.03.2007 13:33
script läuft und funktioniert gibt aber fehlermeldung aus? Promaetheus PHP Tipps 2006 5 12.09.2006 23:42
[Erledigt] Fehlermeldung weil .txt Datei nicht existiert PHP Tipps 2005-2 9 28.09.2005 19:57
Fehlermeldung PHP Tipps 2005-2 2 04.09.2005 04:04
Ich will Fehlermeldung vermeiden. Zero.exe PHP Tipps 2005-2 2 02.08.2005 13:11
fragwürdige Fehlermeldung PHP Tipps 2005 5 19.05.2005 15:45
Backslash ausgeben = Fehlermeldung NetLook PHP Tipps 2005 3 21.03.2005 12:02
[Erledigt] header() Fehlermeldung PHP Tipps 2005 8 14.01.2005 13:03
Script bei Strato mit Fehlermeldung, bei Netbeat ok PHP Tipps 2004-2 14 08.12.2004 11:08

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ajax responsetext wirft eine 1 aus, ajax request getelementbyid, ajax responsexml null, javascript fehler \is null\ vermeiden, ajax responsexml, js xml request responsexml = null, responsexml wird nicht ausgefüllt, ajax responsexml attribute, ajax request xml, php responsexml, responsexml.getelementbyid xml javascript, responsexml php, responsexml.documentelement appendchild, this.req.responsexml.documentelement, null oder kein objekt, ajax request response xml, new ajaxrequest() responsexml, ajax responsexml element zugreifen, responsexml null, responsexml problem localhost, ajax einblenden meldung

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum