我正在尝试做一些我不确定是否可能的事情?
用户打开网站。如果他们尝试在新选项卡中重新打开链接,我需要将他们重定向到另一个页面。
我尝试过使用c#
看看我是否可以检测到页面重新加载。这是可行的,但是如果我出于某种原因将代码放入页面加载事件中,它会运行两次,并且无论它们是第一次打开还是在新选项卡中打开,它都会重定向它们。我只需要在他们打开新标签时发生。
我的代码:
bool IsPageRefresh = false;
if (!IsPostBack)
{
ViewState["ViewStateId"] = System.Guid.NewGuid().ToString();
Session["SessionId"] = ViewState["ViewStateId"].ToString();
}
else
{
if (ViewState["ViewStateId"].ToString() != Session["SessionID"].ToString()) ;
{
IsPageRefresh = true;
if (IsPageRefresh == true)
{
Response.Redirect("~/Pages/EstimateList.aspx", true);
}
}
Session["SessionId"] = System.Guid.NewGuid().ToString();
ViewState["ViewStateId"] = Session["SessionId"].ToString();
}
我需要使用 Javascript
或jQuery
去做这个?我对Javascript
真的很陌生和jQuery
.
最佳答案
您可以使用cookie。当用户第一次打开页面时,您会向计算机发送一个 cookie,内容为 PageOpened=true
,当用户在新选项卡中打开它时检查是否有 cookie with PageOpened=true
,如果有,请在浏览器中打开您的其他链接。
您可以给您的 cookie 设置时间限制,或者在第一个站点关闭或用户打开新选项卡等时销毁它们。
我无法向您提供代码,因为我从未在网络上使用过 C#,但这应该可以让您了解解决方案的可能途径。
P.S.:作为用户,我也会觉得这很烦人,但这是你的决定。
关于javascript - 检测用户是否在新选项卡中打开链接并重定向到新网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38659998/