Javascript 必需的字段验证器允许onclick函数,即使字段无效
我在我的页面上要求字段验证器可以工作,但是它们仍然允许按钮调用java脚本函数。例如,我可以添加文本并删除它,验证程序将显示一个错误。如果单击submit按钮,它仍会在onclientclick中执行javascript函数。如何阻止它在onclientclick中执行函数 按钮:Javascript 必需的字段验证器允许onclick函数,即使字段无效,javascript,jquery,asp.net,validation,ajaxcontroltoolkit,Javascript,Jquery,Asp.net,Validation,Ajaxcontroltoolkit,我在我的页面上要求字段验证器可以工作,但是它们仍然允许按钮调用java脚本函数。例如,我可以添加文本并删除它,验证程序将显示一个错误。如果单击submit按钮,它仍会在onclientclick中执行javascript函数。如何阻止它在onclientclick中执行函数 按钮: <asp:Button ID="formPost" text="Submit" class="btn btn-default" runat="server" CausesValidation="true" On
<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可折叠PanelExtender中,因此下面是我用于启用/禁用验证的javascript(基于复选框):
$('SameBillingChkBx').bind('click',函数(e)
{
如果($(this).is(':checked'))
{
$.each(页\验证程序,函数(索引,验证程序){
if(validator.validationGroup==“计费”){
ValidatorEnable(validator,false);
}
});
}
})
添加:OnClientClick=“if(Page_ClientValidate())CloseDialog();”
添加内部功能
var val = <%= RequiredFieldValidatorFname.ClientID %>;
if (val.isvalid == false) {
//Do something
}
var=;
如果(val.isvalid==false){
//做点什么
}
这将为下一次单击禁用验证程序我找到了它。我编写了以下函数:
function submitform()
{
if (!Page_IsValid) {
return false;
}
return sendHPCIMsg();
}
然后我在我的点击事件中调用了这个
<asp:Button ID="formPost" text="Submit" class="btn btn-default" runat="server" CausesValidation="true" OnClientClick="return submitform();" />
谢谢大家的帮助
function submitform()
{
if (!Page_IsValid) {
return false;
}
return sendHPCIMsg();
}
<asp:Button ID="formPost" text="Submit" class="btn btn-default" runat="server" CausesValidation="true" OnClientClick="return submitform();" />