使用.innerHTML动态添加HTML(IE7中的格式问题)

Dynamically adding HTML using .innerHTML (formatting issue in IE7)

本文关键字:格式 问题 IE7 innerHTML 动态 添加 HTML 使用      更新时间:2023-09-26

我有一个选择下拉列表,当更新时,它会获取新变量并动态更新其正下方的div。

这是我选择的输入:

<select name='region_name' onchange='showDistrict(this.value)'>

这是我控制动态内容的javascript:

<script>
function showDistrict(str)
{
if (str=="")
  {
  document.getElementById("district_div").innerHTML="";
  return;
  } 
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)
    {
    document.getElementById("district_div").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","getdistrict.php?q="+str,true);
xmlhttp.send();
}
</script>

页面getdistrict.php?q=执行另一个MySQL调用并将信息循环到div"district_div"中我的问题是…该div区域在IE 7中没有正确拉伸。所以我的动态数据覆盖了它下面的所有内容。

当我用firebug查看源代码时,我甚至没有从innerHTML中看到新的html,所以我不确定这是css问题还是与.ninnerHTML 有关

不要为此div设置任何widthheight,或者只设置min-width min-height,您也可以为此div 设置overflow:hidden