I am having a aspx page which inherits from a master page. In the master page I have a button that is common for every page in the solution.
<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>
Here the CheckSearchTextBox()
is a javascript function and the btnMainSearch_Click
is the event which is handling the code behind part of the button.
In a certain page this button click event btnMainSearch_Click
is not fired. (The debugger does not reach that in the code)
In the runtime, (When examined using Firebug) this is the code segment generated for the button.
<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>
Actually in the other pages where this button works fine , the same html output is generated for this button. Am I missing something here?
Check whether there are any validation errors because it would not allow server side event btnMainSearch_Click
getting fired.
One reason for this is may be that postback is being stopped by some visible or apparently invisible validator. Try adding cause validation to false in button tag.
CausesValidation="false"
来源:https://stackoverflow.com/questions/27038297/onclick-events-not-working-in-asp-net-page