1.返回XML 
       Response.ContentType = "text/xml";
        Response.Write(dd.GetXml());
        Response.End();  我想同时再返回一个string类型的PCount,  请问如何实现?2.还有个问题就是xmlHttp.responseXML是获取xml  那我想获取.net的dataset用什么?

解决方案 »

  1.   

    1、把string 类型的 PCount放到你的XML中一起返回,或者直接Write过去(前面加个分隔标记),但这时ContentType 不能是XML了,客户端的XmlHtttpRequest也不能用responseXML来获取数据了,要用responseText来读取数据,然后先根据你的xml和PCount之间的分隔标记分开,再把XML读出来。2、把dataset内的数据转换成XML用 ds.GetXml()
      

  2.   

     楼上不是很明白你的意思?是这样子吗?好象不行呢?
           Response.ContentType = "text/html";
            Response.Write(PCount);
            Response.Flush();        fenye.InnerHtml = douser.page1(PCount, pindex);
            Response.ContentType = "text/xml";
            Response.Write(dd.GetXml());
            Response.End();
      

  3.   

    怎么把 PCount放到XML中一起返回?是这样写吗?
            fenye.InnerHtml = douser.page1(PCount, pindex);
            Response.ContentType = "text/xml";
            Response.Write(dd.GetXml() + "<pcount>" + PCount + "</pcount>");
            Response.End();好象返回的是个text类型的?提示:XML解析错误:废弃 document 元素之后的内容
      

  4.   

     fenye.InnerHtml = douser.page1(PCount, pindex); 
            Response.ContentType = "text/html"; 
            Response.Write(dd.GetXml() + "&&&" + PCount); 
            Response.End(); 
    客户端要用
    responseText来获取返回数据,var str = xmlHttp.responseText;
    var pcountstr = str.substring(str.indexOf("&&&"),str.length);
    var xmlstr = str.substring(0,str.indexOf("&&&")-1);然后用XMLDocument读取XMLSTR来处理XML数据// var xmlDoc = document.implementation.createDocument("", "", null); //firefox
    var xmlDoc =  new   ActiveXObject("MSXML2.DOMDocument");   //IE
    xmlDoc.loadXML(xmlstr);PS:
    XML只能是一个根元素,你后来的代码发生错误是因为把pcount做为一个XML节点加入另一个有一个根元素的完整XML中导致根元素不唯一,所以发生了错误,其实你也可以在服务器端把XML解析一下把你的PCount做为节点加入到根元素里面去,然后做为一个完整的XML返回。