如果是正常页面,我可以使用

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,但是,母版页中的javascript找不到在子页面中定义的rootpath。

最佳答案

如果我正确理解了您的问题,那么您尝试获取Javascript的根路径吗?

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

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

09-25 16:31