C# 相对于服务器的URL
我的应用程序中有一个ASP.NET按钮,我想在新窗口中打开服务器上的另一个网站。目前我做了一个响应。在我的服务器端重定向点击事件(到“.\OtherWebsite”),这是有效的。但由于它需要在一个新窗口中,我需要用JavaScript来实现 “..\OtherWebsite”路径在window.open JavaScript命令中有效吗?如果没有,我可以使用哪些.NET方法/属性来获取完整路径C# 相对于服务器的URL,c#,javascript,C#,Javascript,我的应用程序中有一个ASP.NET按钮,我想在新窗口中打开服务器上的另一个网站。目前我做了一个响应。在我的服务器端重定向点击事件(到“.\OtherWebsite”),这是有效的。但由于它需要在一个新窗口中,我需要用JavaScript来实现 “..\OtherWebsite”路径在window.open JavaScript命令中有效吗?如果没有,我可以使用哪些.NET方法/属性来获取完整路径 我无法硬编码网站URL,因为有些用户将通过LAN(服务器名称\应用程序)访问,有些用户将通过网站(w
我无法硬编码网站URL,因为有些用户将通过LAN(服务器名称\应用程序)访问,有些用户将通过网站(www.website.com/application)访问。您可以使用
self.location.href
获取页面的当前URL,然后形成与之相关的新URL,然后将其传递到window.open()
方法
这里是方法的定义
希望这对您有所帮助……您可以通过从codebehind执行javascript来做到这一点
public void OpenNewWindow(string url)
{
ClientScript.RegisterStartupScript(this.GetType(), "newWindow", String.Format("<script>window.open('{0}');</script>", url));
}
这里还有一个参考:
希望这能有所帮助。重定向路径是相对于页面所在的位置,而不是客户端所在的位置。我目前无法进行测试
String url = "~/page.aspx";
url = Page.ResolveClientUrl(url);
OpenNewWindow(url);