我打算在同一窗口的"新标签中打开外部链接(" www.google.com")。从我的asp.net项目中单击按钮。有没有办法做到这一点。 (链接来自数据库,看起来我不能在标记方面这样做。)
目前我试过,response.redirect& window.open但似乎都不起作用。
Response.Redirect
protected void btnSubmit_Click(object sender, EventArgs e)
{
Response.Redirect("www.google.com");
}
Window.Open
protected void btnSubmit_Click(object sender, EventArgs e)
{
string x = "www.google.com";
string s = "window.open('" + x + "', 'popup_window', 'width=300,height=100,left=100,top=100,resizable=yes');";
ClientScript.RegisterStartupScript(this.GetType(), "script", s, true);
}
我在两种情况下得到的错误是:找不到404页面。
答案 0 :(得分:1)
你可以做的是在响应中发送一大块html,该响应与你的url有一个链接作为href,target =" _blank"以及伪造点击的表格的一大堆javascript onload。如果这不起作用,那么请使用window.open(" www.google.com");
response.write("<script>");
response.write("window.open('www.google.com','_blank')");
response.write("</script>");
完整说明here
答案 1 :(得分:0)
请注意所请求的网址:
http://localhost/www.google.com
如果您要将用户定向到其他网站,则必须完全限定网址:
Response.Redirect("http://www.google.com");
或:
string x = "http://www.google.com";
否则,浏览器认为它正在当前网站上寻找名为“www.google.com”的资源。
答案 2 :(得分:0)
您必须指定完整的网址,因此请使用
Response.Redirect("Http://www.google.com");
古德勒克。
答案 3 :(得分:0)
尝试:
protected void btnSubmit_Click(object sender, EventArgs e)
{
string x = "https://www.google.com";
string s = "window.open('" + x + "', 'popup_window', 'width=300,height=100,left=100,top=100,resizable=yes');";
ClientScript.RegisterStartupScript(this.GetType(), "script", s, true);
}
编辑2:
根据This,您无法以这种方式在新窗口中打开它。
如果您真的想在新窗口中使用,请使用HTML Links target="_blank"
属性。
答案 4 :(得分:0)
网址www.google.com被解释为本地路径,请尝试
http://www.google.com
代替。
使用_new作为窗口名称将打开一个新窗口或选项卡:
window.open("...", "_new")