如何从母版页代码页获取应用程序路径?

时间:2011-09-19 16:15:09

标签: c# javascript jquery asp.net

如果是普通页面,我可以使用

public static string GetRootPathJS(Page page)
{
    StringBuilder strBuilder = new StringBuilder();

    string strApp = page.Request.ApplicationPath;
    if (strApp == "/") strApp = "";

    strBuilder.Append("<script type='text/javascript'>");
    strBuilder.AppendFormat("rootPath=\"" + strApp + "\";");
    strBuilder.Append("</script>");

    return strBuilder.ToString();
}

在pageonload方法中只需调用

ClientScript.RegisterStartupScript(this.GetType(), "root", GetRootPathJS(this));

在此之后,我可以使用javascript直接在客户端调用rootPath。但是在母版页代码页中没有ClientScript引用。如何在母版页代码页中获取rootpath。我也尝试从子页面获取rootpath,但是,masterpage中的javascript无法找到子页面中定义的rootpath。

1 个答案:

答案 0 :(得分:2)

如果我正确理解你的问题,你试图在Javascript中获取根路径吗?

如果是这样,您可以在masterpage.master上使用以下内容

<script type="text/javascript">
    var baseUrl = '<%=Page.ResolveUrl("~")%>';
</script>