在标记页面上,我们隐藏了这些按钮:
<asp:TextBox ID="searchBox" runat="server"></asp:TextBox><asp:Button ID="btnSearch" runat="server" Text="Search Site" />
<br /><br />
<asp:Button runat="server" ID="checkall" Text="Check All" OnClick="checkall_Click" />
<asp:Button runat="server" ID="uncheckall" Text="Uncheck All" OnClick="uncheckall_Click" />
我们希望在页面加载时隐藏checkall和uncheckall按钮。
如果单击搜索按钮,则使checkall和uncheckall按钮可见。
到目前为止,我的努力运作不佳。
首先在page_load(...)事件中,我有这些:
'make them hidden by default
checkall.Visible = False
unckeckall.Visible = False
然后在btnSearch_click(...)事件中,我想确保点击搜索按钮,然后使checkall和uncheckall按钮可见。
If (btnSearch.ID = "btnSearch") Then
checkall.Visible = True
unckeckall.Visible = True
End If
到目前为止,它运作不佳。
在页面加载时,checkall和uncheckall按钮被隐藏,就像我们想要的那样。
当用户点击搜索网站时,它们是可见的。这也很好。
问题是,当我点击checkall检查复选框时,checkall / uncheckall按钮会再次消失。
我们只希望在未点击搜索坐标按钮时它们不可见。
有什么想法吗?
答案 0 :(得分:2)
将初始化代码移到!IsPostBack
支票中:
if (!IsPostBack)
{
checkall.Visible = False;
unckeckall.Visible = False;
}
更好的是,将它从C#中删除使其声明:
<asp:Checkbox ID="checkall" Visible="False" ... />
编辑或者,在VB中:
If Not IsPostBack Then
checkall.Visible = False
unckeckall.Visible = False
End If
右?我的VB可能有点生锈。
答案 1 :(得分:1)
试试这个
'VB
If Not Page.IsPostBack Then
'make them hidden by default
checkall.Visible = False
unckeckall.Visible = False
End If
//C#
If (!Page.IsPostBack)
{
'make them hidden by default
checkall.Visible = false;
unckeckall.Visible = false;
}
答案 2 :(得分:0)
为btnSearch添加OnClick事件,如下所示
<asp:TextBox ID="searchBox" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="Search Site" OnClick="btnSearch_click" />
<br /><br />
<asp:Button runat="server" ID="checkall" Text="Check All" OnClick="checkall_Click" />
<asp:Button runat="server" ID="uncheckall" Text="Uncheck All" OnClick="uncheckall_Click" />
答案 3 :(得分:0)
只是让它的可见性为无。
[1, 2, 3, 4, 5, 6]