【发布时间】:2014-03-28 19:25:25
【问题描述】:
我的页面上需要字段验证器,但它们仍然允许按钮调用 java 脚本函数。例如,我可以添加文本并将其删除,验证器将显示错误。如果单击提交按钮,它仍然会执行 onclientclick 中的 javascript 函数。如何阻止它执行 onclientclick 中的功能?
按钮:
<asp:Button ID="formPost" text="Submit" class="btn btn-default" runat="server" CausesValidation="true" OnClientClick="return sendHPCIMsg();" />
注意:我无权编辑 sendHPCIMsg() 函数。
要验证的字段:
<div class="form-group col-small">
<label class="col-sm-2 control-label">First Name: </label>
<div class="col-sm-8">
<asp:TextBox ID="fNameTxt" runat="server" CssClass="input-small"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidatorFname" ControlToValidate="fNameTxt" runat="server" ErrorMessage="First name is required" ValidationGroup="billing" ForeColor="Red"></asp:RequiredFieldValidator>
</div>
</div>
上面的字段也在 AJAX CollapsiblePanelExtender 中,所以这是我用来启用/禁用验证的 javascript(基于复选框):
<script>
$('#SameBillingChkBx').bind('click', function (e)
{
if ($(this).is(':checked'))
{
$.each(Page_Validators, function (index, validator) {
if (validator.validationGroup == "billing") {
ValidatorEnable(validator, false);
}
});
}
})
</script>
【问题讨论】:
标签: javascript jquery asp.net validation ajaxcontroltoolkit