按钮只工作一次,然后也会打断页面上的所有其他按钮
本文关键字:按钮 其他 工作 一次 然后 | 更新日期: 2023-09-27 18:20:40
我有一个很大的表单,上面有几个按钮。它们的目的是显示/隐藏页面的部分(包含在UpdatePanels中)。它们都使用相同的私有方法(将按钮和面板作为参数)。然而,我的两个按钮的行为与其他按钮不同。其中一个按钮什么都不做。另一个工作一次,但从那时起停止所有按钮的工作。如果按下了该按钮,则不会调用按钮的onClick方法,除非重新加载页面(通过调试进行检查)。
我的按钮,打破一切和它的面板:
<asp:Button ID="btnBtCBerigelse" runat="server" Text="Vis" onClick="btnBtCBerigelse_Click"/>
<asp:Panel ID="pnlBtCBerigelse" runat="server" Visible="false" BorderColor="#99CCFF" BorderStyle="Solid">
Content of panel
</asp:Panel>
该按钮的onClick方法(在.cs文件中):
protected void btnBtCBerigelse_Click(object sender, EventArgs e)
{
visSkjul(btnBtCBerigelse, pnlBtCBerigelse);
}
该方法在我第一次单击该按钮时被调用,但此后不会调用。
它和其他按钮的方法调用的方法(在同一个.cs文件中):
private void visSkjul(Button btn, Panel pnl)
{
if (pnl.Visible)
{
pnl.Visible = false;
btn.Text = "Vis";
}
else
{
pnl.Visible = true;
btn.Text = "Skjul";
}
}
另一个按钮,应该是一样的,但在点击btnBTBerigelse按钮一次之前工作得很好:
<asp:Button ID="btnBtCEmne" runat="server" Text="Vis" onclick="btnBtCEmne_Click" />
<asp:Panel ID="pnlBtCEmne" runat="server" Visible="false" BorderColor="#99CCFF" BorderStyle="Solid">
Content of panel
</asp:Panel>
工作按钮的方法:
protected void btnBtCEmne_Click(object sender, EventArgs e)
{
visSkjul(btnBtCEmne, pnlBtCEmne);
}
它调用与其他按钮相同的私有方法。
破坏一切的按钮甚至破坏了我页面上的"保存"按钮,"保存"不使用任何面板或私人方法。
当点击这个特定的按钮时会发生什么,而其他按钮都不会发生?该页面以前工作过,我认为除了添加xml文档之外,我没有做任何更改(但这不应该改变任何事情,对吧?)。
谷歌文档中页面和.cs文件的代码:https://docs.google.com/document/d/1HhtSq5nXBio09pSBRsBWQbOM9m6Hr5wrNqhJ0O5Yf6s/edit?usp=sharing
问题是由验证器引起的。我在面板的一个字段上添加了一个验证器,当这个验证器不满意时,页面上的任何按钮都无法工作。