xmlhttp在IE9中破解

时间:2012-08-06 06:20:39

标签: javascript ajax internet-explorer-9 xmlhttprequest

echo 'function get_estrategias(estrategia,fase){
    if(window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else{// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function(){
        if (xmlhttp.readyState==4 && xmlhttp.status==200){
            $("#descripciones select").append(xmlhttp.responseText);
        }
    }
    xmlhttp.open("POST", "../resources/get_estrategias.php", true);
    xmlhttp.setRequestHeader("Content-type", "application/xml;charset=ISO-8859-1");
    parameters="estrategia="+estrategia+"&fase="+fase;
    xmlhttp.send(parameters);
}'

此代码在IE9中断。它抛出错误代码C00CE56E'未知编码'或类似的东西:http://support.microsoft.com/kb/304625

我不知道如何解决这个问题,我正在学习一个粗略的javascript基础我知道ajax,但我有一种感觉,这只是那些我似乎不知道如何google的IE漏洞中的另一个。< / p>

更新

正如有人提到的那样,我只使用jquery尝试了这个。

echo 'function get_estrategias(estrategia,fase){
            $.ajax({
                            url: \'../resources/get_estrategias.php\',
                            type: \'POST\',
                            dataType: \'html\',
                            contentType: "application/x-www-form-urlencoded; charset=iso-8859-1",
                            data:{estrategia :estrategia,fase:fase},
                            success:function(data, textStatus, xhr){$("#descripciones select").append(data);},  
                            error:function(xhr, status, errorThrown) {alert(errorThrown+\'\n\'+status+\'\n\'+xhr.statusText); }
           });
    }';

我最终遇到了同样的麻烦错误c00ce56e。我在阅读https://forum.jquery.com/topic/fix-jquery-ajax-errors-in-ie#14737000003545233后添加的最后一个错误函数 它产生了一个包含以下内容的弹出窗口

 [object error]
 error
 [object error]

在所有情况下,我都尝试在我的localhost上分别将“AddDefaultCharset ISO-8859-1”和“default_charset =”ISO-8859-1“添加到我的http.conf和php.ini文件中,但无济于事。 如果这有助于缩小问题的范围,或者如果有人对如何解决问题有所了解,请不要犹豫,这样说:(

0 个答案:

没有答案