asp.net 中有一段代码:
-----------------
- C# code
Response.ContentEncoding = System.Text.Encoding.UTF8; string xmls = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\r\n"; xmls += "<apps>\r\n"; xmls += " <app>\r\n"; xmls += " <zp_id>1</zu_id>\r\n"; xmls += " </app>\r\n"; xmls += "</apps>\r\n"; Response.ContentType = "text/xml"; Response.Charset = "UTF-8"; Response.AddHeader("Content-Disposition", "attachment;filename=\"apps.xml\""); Response.Write(xmls); Response.Flush(); Response.End();
然后在js中用代码
- JScript code
var xhr = new XMLHttpRequest(); xhr.open("GET", "apps.aspx", true); xhr.send(null); xhr.onreadystatechange = function(){ if(xhr.readyState == 4) { xmlDoc_3 = xhr.responseXML.documentElement; //到这里chrome中就会出"Cannot read property 'documentElement' of null的错误" } };
请问什么地方做的不正确呢?如果将 apps.aspx 直接用 apps.xml 代替,chrome就不会出错
但在ie6 7 8 和firefox中确没有任何错误
------解决方案--------------------
Response.AddHeader("Content-Disposition", "attachment;filename=\"apps.xml\"");
这行没用