function callback() {
            if (xmlHttp.readyState == 4) {
                if (xmlHttp.status == 200) {
                  
                    var mes = xmlHttp.responseXML.getElementsByTagName("message")[0]; 
                    alert(mes);
                    var val = xmlHttp.responseXML.getElementsByTagName("passed")[0].Text;//
                    setMessage(mes, val);
                    alert("b");
                     
                }
            }
        }
页面请求返回:
 context.Response.Write("<?xml version=\"1.0\"?><response><passed>False</passed><message>You have entered an invalid date.</message></response>");问题:1、alert(mes) 为空?取不到值。
      2、目的:取出节点的值xmlHttp.responseXML.getElementsByTagName("passed")[0].Text; 语句有没有错?

解决方案 »

  1.   

     已经加了 context.Response.ContentType = "text/xml;charset=UTF-8";
      

  2.   

    还有把前台的html代码删掉只留下<%@page...
      

  3.   

    自己搞定了
      function callback() {
                if (xmlHttp.readyState == 4) {
                    if (xmlHttp.status == 200) {
                      var requestMsg=xmlHttp.responseText;                 
                      var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");                  
                      xmlDoc.loadXML(requestMsg);         
                      var mes = xmlDoc.getElementsByTagName("message")[0].Text; 
                       var val = xmlDoc.getElementsByTagName("passed")[0].Text;//
                        setMessage(mes, val);
                                         
                         
                    }
                }
            }