相关疑难解决方法(0)

检测浏览器刷新

如何确定用户是否按下了F5以刷新我的页面(如何实现SO.如果刷新页面,问题计数器不会增加).我已经测试了十几个教程中提到的许多代码片段,但都没有正常工作.

更清楚的是,假设我有一个空的Web表单,并想检测用户是否在客户端按下了F5(导致刷新未提交).

我可以使用会话变量,但如果用户导航到我网站的另一个页面,然后回来,我想将其视为新访问,而不是刷新.所以这不是会话范围变量.

谢谢.

更新:我能找到的唯一解决方法是从基页继承我的页面,覆盖下面的加载方法:

    public class PageBase : System.Web.UI.Page
{
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);
        this.Session["LastViewedPage"] = Request.RawUrl;
    }
}  
Run Code Online (Sandbox Code Playgroud)

如果我有兴趣知道这是否刷新,请在每一页中:

if (this.Session["LastViewedPage"].ToString() == Request.RawUrl)
{
    // This is a refresh!
}
Run Code Online (Sandbox Code Playgroud)

asp.net webforms refresh asp.net-4.0

5
推荐指数
1
解决办法
8797
查看次数

如何在asp.net中使用"发布/重定向/获取"又名"后发布后重定向"

在asp.net中执行某些操作后执行刷新似乎会使它们再次发生,即使该操作没有意义(想想双删除).处理这种情况的Web方式是在帖子之后重定向以获得可以刷新的页面的干净版本,而无需将操作重新发布到Web服务器.我怎么能用ASP.NET做到这一点

asp.net post redirect-after-post post-redirect-get

4
推荐指数
1
解决办法
2646
查看次数

页面加载时调用onclick函数

我是ASP/C#编程的新手:

asp:button创建如下:

<asp:button
    ID="CreateItem"
    ClientIDMode="Static"
    OnClick="btnSave_Click"
    runat="server"
    Text="SAVE">
</asp:button>
Run Code Online (Sandbox Code Playgroud)

在后面的代码中,我有以下内容:

btnSave_Click(object sender, EventArgs e)
{
    //Code here to create an Item    
}
Run Code Online (Sandbox Code Playgroud)

我注意到当我点击我的按钮后刷新页面时,正在调用此函数.为了验证,我运行了调试器并在btnSave_Click函数内部设置了断点,并在刷新页面时验证它确实在函数内部.我究竟做错了什么?

c# asp.net onclick

3
推荐指数
1
解决办法
1650
查看次数