我在http://worldcitiesdatabase.info/test1/
处有一个js / ajax脚本我刚刚收到一条投诉,称它在IE8中无法正常运行。
Onchange似乎有效,但接下来的菜单没有填充。
你能帮我解决一下吗?
由于
不确定代码中有问题的部分是什么。这是我的猜测:
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
newList="";
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
newList = xmlhttp.responseText;
m1.innerHTML=newList;
m1.disabled=false;
}
if (menuname=="showCountry") {
var c1=document.getElementById('showRegion');
if (c1.options.length==2) {
if (c1.options[0].value=='NONE') {
c1.remove(0);
c1.value='0';
reloadmenu(c1);
}
}
}
}
xmlhttp.open("GET",newFile+".php?q="+menuvalue,true);
xmlhttp.send();
答案 0 :(得分:2)
该行
m1.innerHTML=newList;
是罪魁祸首,因为您使用innerHTML
将<option>
添加到<select>
。这是IE8中的已知错误 - http://support.microsoft.com/kb/276228。
注意:如果您只是打开开发人员工具并以IE8模式运行,则可以在Internet Explorer中运行测试页(例如参见http://techathlon.com/internet-explorer-10-run-compatibility-mode/)