我现在使用Button和onclick事件编写非常简单的代码。
问题是单击该按钮会导致页面重新加载,并且不会触发在单击事件中定义的操作。
这是我的代码:
<asp:CheckBoxList ID="chkContact" CssClass="panel-login" runat="server">
</asp:CheckBoxList>
<asp:Button ID="btnUpdate" Text=" Update " CssClass="button" runat="server" />
和事件:
protected void Page_Init(object sender, EventArgs e)
{
btnUpdate.Click += new EventHandler(btnUpdate_Click);
}
protected void btnUpdate_Click(object sender, EventArgs e)
{
Response.Write("a" + chkContact.Items.Count.ToString());
}
这很奇怪。我已经做了很多次,从来没有问过按钮。
我在这里错过了什么吗?
答案 0 :(得分:0)
为什么不使用onclick事件:
<asp:Button ID="btnUpdate" Text=" Update " CssClass="button" runat="server" onclick="btnupdate_Click"/>
答案 1 :(得分:0)
您是否在页面上有任何验证控件?如果这些不属于特定的验证组,则任何回发都会触发它们。
答案 2 :(得分:0)
我找到了导致问题的原因。 我在Update按钮下面有一个LinkButton:
<asp:LinkButton ID="btnCancel" Text="Back / Cancel" runat="server" />
当我将postbackurl分配给linkbutton时,即使我点击了Update按钮而不是LinkButton,也会导致页面重新加载。
很奇怪,它没有帮助将UpdatePostBack =“false”添加到Update和LinkButton,因此我需要将LinkButton更改为我认为的其他内容。