c# - OnClick 事件在 ASP.NET 页面中不起作用

标签 c# asp.net .net postback dopostback

我有一个继承自母版页的 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/

相关文章:

.net - Portable Library .Net 中的 Sha256 哈希

c# - 如何将从请求生成的 xml 结构转换为 Web 服务

c# - 所有 UWP 样本在启动画面卡住

c# - 即使属性已设置且有效,为什么 TryUpdateModel 仍返回 false?

c# - WCF 单元测试导致 System.ServiceModel.FaultException

c# - GetType() 是方法还是类?

c# - Kendo TabStrip 与 KendoGrid 内部使用 JavaScript 进行事件处理

c# - 不使用 AssemblyName 解析程序集限定名

c# - 如何使用 POST 在 HTTP 服务器上上传文件?

c# - C# 中的属性或变量