我已經在我的頁面上使用了字段驗證器,但它們仍然允許按鈕調用Java腳本函數。例如我可以添加文本並刪除它,驗證器將顯示一個錯誤。如果點擊提交按鈕,它仍然會在onclientclick中執行javascript函數。我怎樣才能阻止它執行onclientclick函數?必填字段驗證程序允許onclick函數,即使字段無效
按鈕:
<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>