Einzelnen Beitrag anzeigen
Alt 07.07.2008, 18:44   #1 (permalink)
mokus
Overclocker
 
Benutzerbild von mokus
 

Registriert seit: 07.01.2005
Beiträge: 380

mokus ist zur Zeit noch ein unbeschriebenes Blatt

Standard Problem bei einem request unter Javascript

Hi,
ich habe ein Problem mit einer request Abfrage, in dieser rufe ich eine Datei mit einem bestimmten String aus den ich verarbeiten möchte. Nur jetzt habe ich das Problem das in der Funktion drin ein Syntax Fehler laut Firefox auftritt.

Beispiel:
Code:
Fehler: Syntax-Fehler
Quelldatei: http://www.lammpee.de/toolbar_inc/ar...p?archive=news
Zeile: 1, Spalte: 1
Quelltext:
Design Update Start*,*http://www.lammpee.de/archive,news,entry,4,1.html*;*...
Komischer weise funktioniert die ausgabe aber, wenn ich mitten in die Funktion die Variable mit dem enthaltenen String über ein Alert ausgeben lasse. Ab da an gibt es dann keine probleme mehr.

Funktion:
HTML-Code:
<script language="javascript" type="text/javascript">

var id_name;
var http_request;
var request_status
var request_content_v;

function request (url,id) {
        
        id_name = id;
        http_request = false;
        request_content_v = "";
        request_status = false;

        document.getElementById(id_name).value = "load...";
        
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // zu dieser Zeile siehe weiter unten
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            //alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
            return false;
        }
                
        http_request.onreadystatechange = request_content;
         
        http_request.open('GET', url, true);
        http_request.send(null);
                
        document.getElementById(id_name).value = request_content_v;
        
        return request_status;
        
    }
    

    function request_content () {

        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                request_content_v = http_request.responseText
                request_status = true;
            } else {
                alert('Bei dem Request ist ein Problem aufgetreten.');
                request_status = false;
            }
        }
          
    }

</script>
Wenn ich in dieser Funktion am Ende ein Alert reinbringe funktioniert es.
HTML-Code:
        http_request.onreadystatechange = request_content;
         
        http_request.open('GET', url, true);
        http_request.send(null);
        
        alert(request_content_v);
        
        document.getElementById(id_name).value = request_content_v;
        
        return request_status;
        
    }
Zitat:
Zitat von Lieutenant Commander Worf
Die Borg besitzen weder Ehre noch besitzen sie Mut – das ist unser größter Vorteil.

Geändert von mokus (08.07.2008 um 23:42 Uhr)
mokus ist offline   Mit Zitat antworten