我想制作一个按钮,然后根据点击次数限制它 到目前为止,我还没有成功,但这是我走了多远。 这是我的按钮
<asp:Button ID="btnClearSesson" runat="server" Text="Reset" onclick="btnClearSesson_Click" />
这就是我正在做的事情
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim lUserName As String
Static count As Integer
count = count + 1
lUserName = HttpContext.Current.User.Identity.Name
If count < 10 && lUserName = "ADMIN" Then
btnClearSesson.Visible = True
Else
btnClearSesson.Visible = False
End If
End Sub
所以我的问题是计数再次开始而不是增加
单击时按钮必须增加计数,然后如果count大于10,它将停止显示按钮
答案 0 :(得分:0)
您已在页面加载中声明了静态变量,因此每次页面加载时都会刷新它
所以用全局范围声明它 像这样
Static count As Integer
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim lUserName As String
count = count + 1
lUserName = HttpContext.Current.User.Identity.Name
If count < 10 && lUserName = "ADMIN" Then
btnClearSesson.Visible = True
Else
btnClearSesson.Visible = False
End If
End Sub
还有一件事你应该增加按钮点击事件处理程序中的计数而不是页面加载。
希望这会对你有所帮助。
答案 1 :(得分:0)
您将代码置于Page Load事件中,而不是单击事件
请尝试以下代码:
Static count As Integer
Protected Sub btnClearSesson_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim lUserName As String = HttpContext.Current.User.Identity.Name
count +=1
btnClearSesson.Visible = count < 10 && lUserName = "ADMIN"
End Sub
在页面加载中,如果用户没有单击按钮,但刷新页面,则计数将以任何方式递增。