就点击后退按钮强制页面刷新按钮、页面

2023-09-10 17:17:31 作者:哥的冷漠万人敬仰

我有2 asp.net pages..page A和B.页 在点击网页A链接,用户被重定向到页面b。当第B,如果用户点击浏览器的后退按钮,我需要有力地调用页面A的页面刷新 我该如何实现这个功能? 注:code必须是在不同的浏览器兼容...即IE浏览器,火狐,歌剧等

I've 2 asp.net pages..page A and page B. On clicking a link on page A, user gets redirected to page B.When on page B, if user clicks browser's back button, I need to forcefully invoke page refresh of page A. How do I achieve this functionality? Note:Code needs to be compatible across different browsers...ie IE, firefox, opera, etc

推荐答案

我觉得这是没有办法的Javascript来判断是否是第一次访问或后退按钮来了。所以我把网页需要在一个UpdatePanel更新,然后执行JavaScript来总是在每一个页面加载刷新这些零件。不是很优雅,但它解决了我的问题。

I think there is no way for Javascript to tell whether it is the first visit or coming from the back button. So I put the parts of the page that need to be updated in an UpdatePanel, and then do the JavaScript to always refresh these on every page load. Not very elegant but it fixes my problem.

function addLoad(fn) {
    if (window.addEventListener) {
        window.addEventListener("load", fn, false); 
        return true; 
    } else if (window.attachEvent) {
        var r = window.attachEvent("onload", fn); 
        return r;
    } else {
        return false; 
    } 
}
function refreshBack()
{
    __doPostBack("<%= updatePanel1.ClientID %>", "");
    __doPostBack("<%= updatePanel2.ClientID %>", "");
}
addLoad(refreshBack);