我有一个继承自母版页的 aspx 页面。 在母版页中,我有一个按钮,该按钮对解决方案中的每个页面都是通用的。
<div class="btn_general_mid">
<asp:Button
ID="btnMainSearch"
ValidationGroup="MainSearch"
OnClientClick="CheckSearchTextBox()"
CausesValidation="true"
runat="server"
OnClick="btnMainSearch_Click"
CssClass="search_btn_submit"
Text="Search" />
</div>
这里的 CheckSearchTextBox()
是一个 javascript 函数,btnMainSearch_Click
是处理按钮部分代码的事件。
在某个页面中,此按钮单击事件 btnMainSearch_Click
未触发。 (调试器没有达到代码中的那个)
在运行时,(使用 Firebug 检查时)这是为按钮生成的代码段。
<div class="btn_general_mid">
<input id="ctl00_btnMainSearch"
class="search_btn_submit"
type="submit"
onclick="CheckSearchTextBox();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$btnMainSearch", "", true, "MainSearch", "", false, false))"
value="Search"
name="ctl00$btnMainSearch"></div>
实际上,在该按钮正常工作的其他页面中,为该按钮生成了相同的 html 输出。我在这里遗漏了什么吗?
最佳答案
其中一个原因可能是回发被一些可见的或明显不可见的验证器阻止了。尝试在按钮标记中将原因验证添加为 false。
CausesValidation="false"
关于c# - OnClick 事件在 ASP.NET 页面中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27038297/