1.The problem is that you are trying to invoke an event method that run on your web server directly from javascript (from client). You have no access to that method in this way, you have to use AJAX call like in the next example:
$.ajax({
type: "POST",
url: action,
data: { paramName1: paramValue1, ... paramNameN: paramValueN},
success: function (resultData) {
var result = resultData.result;
},
dataType: "json"
});
You can see example in the next articles:
Invoke Server Methods From Client Side Using jQuery AJAX in ASP.NET[
^]
Calling a C# method using jQuery on the client side[
^]
2.If you problem is related with client side validation of the user input, you forgot to add and use validation group in your form:
<div >
<asp:ValidationSummary ID="form1ValidationSummary" runat="server" ValidationGroup="Form1ValidationGroup"/>
</div>
<div>
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFirstName" runat="server" ControlToValidate="txtFirstName" InitialValue="0"
ErrorMessage="First Name is required" ValidationGroup="Form1ValidationGroup">
</asp:RequiredFieldValidator>
<br />
<input id="btnSave" type="button" value="Save" class="send action-btn" ValidationGroup="Form1ValidationGroup" />
</div>