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文件中,但无济于事。 如果这有助于缩小问题的范围,或者如果有人对如何解决问题有所了解,请不要犹豫,这样说:(