跟踪按钮点击次数

本文关键字:按钮 跟踪 | 更新日期: 2023-09-27 18:20:32

让我们假设我有一个带有CAPTCHA图像的页面。

我想让用户尝试输入代码三次,否则他就不能再输入了。

我如何跟踪"确认"按钮被点击的次数。每次单击"确认"按钮时,都必须执行回发到服务器的操作。

使用JavaScript是不好的,因为如果用户重新加载页面,计数器将被设置为零。请问这怎么办?

跟踪按钮点击次数

这应该是非常直接的。首先将计数器设置为零,然后在随后的post-back上更新:

if (!this.IsPostBack) { Session["RetryCount"] = 1; }
else
{
    int retryCount = (int)Session["RetryCount"];
    if (retryCount == 3) { // do something because it's bad }
    else { retryCount++; Session["RetryCount"] = retryCount; }
}

使用ViewState存储数字。

或者更好——会话。

Session的优点是它存储在服务器(AFAIK)上,因此不会被篡改,而且即使在重新加载页面时它也会持久存在。