Permissions\Support\Organise.aspx   只做前台像css html js
Permissions\Server\Organise.aspx   只做aspx.cs操作代码:
Permissions\Server\Organise.aspx 里的方法通过访问数据库数据,进行转换成xml,返回的是xml的字符串 
private void Page_Load(object sender, System.EventArgs e)
{
CSUtility.CDBWrap obj = new CSUtility.CDBWrap();
objDBWrap = obj.m_DbObj; string comm = this.Request["command"];
switch (comm)
{
// 获取当前用户所管理组织结构根
case "get_root":
this.Response.Write("<NewDataSet><Table><org_id>1</org_id><name>root</name><short_name>root</short_name></Table></NewDataSet>");
return;
// 获取组织机构列表
case "get_list"    : 
strSql = "select org_id, name, short_name from Organise where p_id=" + this.Request["p_id"];
ds = objDBWrap.GetDataSetBySQL(strSql, true, out strError);
break;
// 获取指定机构信息
case "get_info":
strSql = "select * from Organise where org_id=" + this.Request["org_id"];
ds = objDBWrap.GetDataSetBySQL(strSql, true, out strError);
break;
// 获取指定机构管理者
case "get_mgr":
strSql = "select top 3 userid, display_name, login_uid from Users";
ds = objDBWrap.GetDataSetBySQL(strSql, true, out strError);
break;
}
if(strError == "")
{
this.Response.Write(ds.GetXml());
}
else
{
this.Response.Write("错误:" + strError);
}
    }

Permissions\Support\Organise.aspxvar url = '../../Server/Organise.aspx?command=get_root&t=' + Math.random();
var root = GetInfoFromServer(url);GetInfoFromServer是用js封装好的ajax
function GetInfoFromServer(url)
{
var httpobj = GetHttpSvr();
httpobj.open("POST",url,false);
httpobj.setRequestHeader("Cache-Control","no-cache"); 
    httpobj.setRequestHeader("Pragma","no-cache");
httpobj.send();
return httpobj.responseText;
}
function GetHttpSvr()
{
if (window.XMLHttpRequest)  
return new XMLHttpRequest();  
else if (window.ActiveXObject)   
return new ActiveXObject("MSXML2.XMLHTTP");  
}
这样返回的值是正确的
但是我想在静态页面html里做ajax,但是返回的结果是把Permissions\Server\Organise.aspx 剩余的
<%@ Page language="c#" Codebehind="Organise.aspx.cs"AutoEventWireup="false"Inherits="MatrixWeb.Permissions.Server.Organise" %>
返回来
不知道哪儿错了
请高手解答下

解决方案 »

  1.   

    this.Response.Write(ds.GetXml());=》
    this.Response.Clear();//清空
                    this.Response.Write(ds.GetXml());//写入
                    this.Response.End();//结束
      

  2.   

    this.Response.End();//结束cs
    ashx  这些都一样哟 
      

  3.   

    我知道结果了,谢谢
    就是我直接在本地打开的网页,不是在iis上访问的。在本地打开的地址显示的是e:/
    不是服务器上的http://localhost
    所以不能本地直接打开,犯了个低级错误