2013-02-21 127 views
1

我必须解决一个问题,在我们的应用程序,如果打开子窗口和用户点击浏览器的后退按钮,我需要重定向到页面,询问用户名和密码。
我们有400个aspx页面,所以我只需要在母版页中进行修改。我有一个像下面打开子窗口时如何点击浏览器后退按钮?

function initPage(){ 
    checkback(); 
} 

此功能是写在外部JavaScript文件,并在母版页中使用的代码。
核对功能包含的代码像下面

if (document.forms[0].cprotection.value=='1') 
{ 

    document.forms[0].pagecode.value=0;  
    document.forms[0].act.value='backpressed'; 
    document.forms[0].submit() 
} 

上面的代码工作正常的父窗口但如果我打开子窗口。
backpressed是关键字正在使用类文件检查重定向到页面,询问用户名和密码。请帮我解决这个问题。在此先感谢

回答

0

当您加载子窗口时,您可以添加一个变量到会话,如果用户单击回来您将检查会话以查看子窗口添加到会话的变量是否无论在哪里页面加载函数,如果它然后正常加载,如果它没有重定向到登录页面。

+0

感谢您的回复,我们因此在我们的应用中不使用Session变量使用Cookie会话。在Javascript中,我可以对此做任何修改或跟踪您的解决方案的id。我也可以在代码文件中获得浏览器事件 – 2013-02-22 04:14:19

+0

@Rakesh B:这使事情变得复杂。只有使用JavaScript才能达到此目的,这似乎是跨界跨站点脚本编写,大多数客户端由于其黑客攻击漏洞而被默认阻止。问题在于,当用户点击后退按钮时,您使用JavaScript所做的任何更改都将被丢弃,因为您基本上将从头开始重新加载页面。因此,如果不涉及某种服务器端代码,我不知道如何处理这种情况。对不起,我无法提供更多帮助。 – 2013-02-22 18:29:07

+0

感谢您的建议,我会与我的面板说话,其实我们有480个aspx页面包括子窗口,所以我们在JavaScript中做了要求,反正我会看到它。 – 2013-02-25 05:06:40

相关问题