JavaScript innerHTML 不适用于 IE?
我正在使用 ajax 调用为我的下拉列表带来列表并将其分配给 html,适用于 mozilla nad crome 但对于 IE,它显示一个空白下拉列表
I am using ajax call for to bring the list for my drop down and assign it to html,works fine for mozilla nad crome but for IE it displays a blank dropdown
var xmlhttp;
var strURL = "selectedu.php?selectward="+selectward;
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)
{
if(xmlhttp.responseText=="NOER")
{
alert("Select ER Type");
}
else
{
document.getElementById(id).innerHTML=xmlhttp.responseText;
}
}
}
xmlhttp.open("GET",strURL,true);
xmlhttp.send();
推荐答案
innerHTML
属性在IE中尝试添加或更新表单元素时出现问题,解决方法是创建一个div并设置附加到 DOM 之前的 innerHtml 属性:
The innerHTML
property has some problems in IE when trying to add or update form elements, the workaround is to create a div and set the innerHtml property on that before appending to the DOM:
var newdiv = document.createElement("div");
newdiv.innerHTML = xmlhttp.responseText;
var container = document.getElementById(id);
container.appendChild(newdiv);
相关文章