Script klappt im IE nicht

VanHellsehn

Erfahrenes Mitglied
Hi,
Ich verstehe nicht warum folgendes Script nicht im IE klappt...
Evtl. habe ich wieder Tomaten auf den Augen. Wenn ja tuts mir leid.
Aber könnt ihr mir weiter helfen?

Code:
/*****
* @author  Marvin Kuhn
* @email webmaster@webmasterparadise.net
* @copyright Marvin Kuhn
*******/
function get_request_object()
{
    var request_object = null;
    if (window.XMLHttpRequest)
        request_object = new XMLHttpRequest();
    else if (window.ActiveXObject)
        request_object = new ActiveXObject("Microsoft.XMLHTTP");
    
    if (request_object == null)
        alert("Hier ist was schief gegangen :(");
        
    return request_object;
}
function keyword_edit() 
{
    if(document.getElementById('keywords'))
    {
        var keywords = document.getElementById('keywords');
        var keyword_box = document.getElementById('keyword_box');
        var input = document.createElement('input');
        // keywords sammeln
        var keyword_text = keywords.firstChild.nodeValue;
        // Keywords in Input einfügen
        var value = document.createAttribute('value');
        value.nodeValue = keyword_text;
        input.setAttributeNode(value);
        // Size wird gesetzt
        var size = document.createAttribute('size');
        size.nodeValue = '50';
        input.setAttributeNode(size);
        // Type wird gesetzt
        var type = document.createAttribute('type');
        type.nodeValue = 'text';
        input.setAttributeNode(type);
        // ID wird gesetzt
        var id = document.createAttribute('id');
        id.nodeValue = 'keyword_input';
        input.setAttributeNode(id);
        // Style wird gesetzt
        var style = document.createAttribute('style');
        style.nodeValue = 'margin:2px 0 0 2px;float:left';
        input.setAttributeNode(style);
        // input wird erstellt
        keyword_box.replaceChild(input, keywords);
    }
    else
        keyword_save();
}
function statehandler()
{
    if(request_object.readyState == 4)
    {
        var daten = request_object.responseText;
        if(daten == 'true')
        {
            // Span wird wieder erstellt
            var span = document.createElement('span');
            var input = document.getElementById('keyword_input');
            // keywords sammeln
            var keyword_text = input.value;
            // Span id geben
            var id = document.createAttribute('id');
            id.nodeValue = 'keywords';
            span.setAttributeNode(id);
            // Span Style setzen
            var style = document.createAttribute('style');
            style.nodeValue = 'float:left;margin:3px 0 3px 3px';
            span.setAttributeNode(style);
            // Keywords in das Span stecken
            var span_text = document.createTextNode(keyword_text);
            span.appendChild(span_text);
            // Span ersetzt das Input
            document.getElementById('keyword_box').replaceChild(span, input);
            // Anzeigen das alles ohne einen Fehler abgelaufen ist
            document.getElementById('edit_image').src = 'http://localhost/hp/img/allgemein/edit.png';
            alert("Die Keywords wurden erfolgreich geändert.");
        }
        else
        {
            document.getElementById('keyword_input').disabled = '';
            document.getElementById('edit_image').src = 'http://localhost/hp/img/allgemein/edit.png';
            alert(daten);
        }
    } 
    else
    {
        document.getElementById('keyword_input').disabled = 'disabled';
        document.getElementById('edit_image').src = 'http://localhost/hp/img/allgemein/loader.gif';
    }
}
function keyword_save()
{
    var keywords = document.getElementById('keyword_input').value;
    request_object.onreadystatechange = statehandler;
    request_object.open('post', 'http://localhost/hp/_files/php/ajax_download_keywords.php');
    request_object.setRequestHeader('Content-Type', 
                            'application/x-www-form-urlencoded');
    request_object.send('keywords=' + escape(keywords));
}
request_object = get_request_object();
 
Was genau funktioniert denn nicht? Welche Funktion?
Bis auf get_request_object() wird ja keine weiter aufgerufen und die sieht eigentlich Ok aus.
 
Hi,

etwas Genauer darfst du ruhig werden, was daran im IE nicht funktioniert.

mfg Maik
 
Moin,


Das man da nicht viel erkennen kann, ohne den Rest zu sehen, haben meine Vorredner ja schon gesagt :-)

Verdächtige gibt es viele, aber um einen bestimmten Fehler von vornherein auszuschliessen, solltest du dies ändern:
Code:
request_object.open('post', 'http://localhost/hp/_files/php/ajax_download_keywords.php');

Du hast dort den Pfad inkl. Protokoll notiert...schreibe dort lieber einen relativen Pfad hin, um auszuschliessen, dass du bspw. die Seite im IE(oder sonstwo) per file:/// öffnest...dann würde der Request beim localhost nämlich fehlschlagen.
 
Hi,
Ich rufe die Function keyword_edit() mit dem event onclick auf.
Leider habe ich den rest gerade nicht vor mir da ich an einem anderen PC bin.
Aber die PHP datei Prüft die eingaben und gibt einen Error aus oder gibt true aus das heißt soviel wie erfolg in dem zusammenhang.
Und das mit dem Pfad werde ich vorerst nicht ändern weil ich an einem PC ohne Internet mit XAMPP arbeite und alles über Localhost aufrufe.

Und wenn ich auf den Button zum ausführen der Function klicke passiert nichts!

MfG,
Marv

PS: Ich hoffe das reicht, wenn nicht muss ich es dem nächst hochladen und zeigen. Nur das ist halt das problem da wir einen DSL-Anbieter wechsel machen und ich deswegen gerade kein Internet habe.
 

Neue Beiträge

Zurück