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形式