日期:2014-05-18  浏览次数:20418 次

javascript 读xml (xmlhttp) 的问题
【a.aspx.cs】
  protected void Page_Load(object sender, EventArgs e)
  {
  string a = Request["id"];
  DataSet ds = this.GetData(a);//查询数据

  string sa = ds.GetXml();//注意是返回 XML形式,而不是写成XML文件
  Response.Write(sa);
  }

【b.aspx】

 <script type="text/javascript">

 var xmlHttp=new ActiveXObject("Microsoft.XMLhttp"); 
   
  function Button1_onclick() 
  {
  var text = document.getElementById("TextBox1").value;  
  var url ="a.aspx?id=" + text + "&acr=" + Math.random();  
  xmlHttp.open("POST",url,true);
  xmlHttp.send(null);
   
  xmlHttp.onreadystatechange=function()
  {
  if(xmlHttp.readyState == 4 || xmlHttp.readystate=='complete')
  {  
  if(xmlHttp.status == 200)
{  
  var xmlObj = new ActiveXObject("Microsoft.XMLDOM");
xmlObj.async = "false";
  xmlObj.load(xml);//注意是XML形式,不是XML文件
if(xmlObj.readyState==4)
{
var xmlDoc = xmlObj.documentElement; //---问题在此,xmlDoc 为null
if(xmlDoc.getElementsByTagName('Table')!=null){
var xmlNode = xmlDoc.getElementsByTagName('Table');
return xmlNode;}
}  
  }
  }
  } 
  }

</script>

为什么var xmlDoc = xmlObj.documentElement; //---问题在此,xmlDoc 为null




------解决方案--------------------
load 代表装入一个文件或url
loadxml 才代表一个xml形式