我在asp.net中有一个Imageutton。我希望当我点击它时,会触发一个事件(该事件的代码用c#编写)。
asp代码是:
<div align="right">
<table dir="rtl">
<tr>
<td>
<asp:ImageButton ID="imgScoreStar1" runat="server" ImageUrl="~/Images/ScoreStars/Star0_28px.png" OnClick="Star_Onclick" />
</td>
</tr>
</table>
</div>
代码背后是:
protected void Star_Onclick(object sender, ImageClickEventArgs e)
{
//do something
}
但永远点击事件(我通过断点测试)。
另一个问题:当我点击ImageButton时,会发生回发。我怎么能避免这个?
感谢。
答案 0 :(得分:0)
要检查的事情很少: 1.检查CausesValidation属性。测试是假的。 2.使用Page.RegisterRequiresRaiseEvent(ImageButton)
答案 1 :(得分:0)
在aspx中
<asp:ScriptManager runat="server"></asp:ScriptManager>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<div align="right">
<table dir="rtl">
<tr>
<td>
<asp:ImageButton ID="imgScoreStar1" runat="server" ImageUrl="~/Images/ScoreStars/Star0_28px.png" OnClick="Star_Onclick" />
</td>
</tr>
</table>
</div>
</ContentTemplate>
</asp:UpdatePanel>
in cs
protected void Star_Onclick(object sender, ImageClickEventArgs e)
{
//do something
}
我检查了它的工作,你需要检查该按钮的属性尝试添加另一个按钮并更改 ID 按钮,忽略将停止点击事件的属性
答案 2 :(得分:0)
您可以像这样围绕页面加载顺序...
if(!IsPostBack){
//PageLoad code
}
然后在按钮单击事件下编写代码。 按钮单击事件应该起作用
对我有用!