自定义验证器在点击页面上的所有控件时被调用
本文关键字:控件 调用 验证 自定义 | 更新日期: 2023-09-27 17:59:32
我编写了一个自定义验证函数来检查是否显示面板
我想在点击NEXT按钮时调用该函数。
但相反,它会在点击页面上的每个按钮时被调用。
这是代码:
function Validate(sender, args)
{
if (document.getElementById("Panel1").style.display == 'none') {
args.IsValid = false;
}
else {
args.IsValid = true;
}
}
这是应该调用的按钮代码onclick。
<asp:Button ID="btnNext" runat="server" Text="Next" Font-Bold="True" CssClass="InputButton" OnClick="btnNext_Click" />
<asp:CustomValidator ID="cvValidate" runat="server" ErrorMessage="Panel has no data." ClientValidationFunction="Validate" Display="none" EnableViewState="false"></asp:CustomValidator>
如果我设置Controltovalidate="btnNext",那么它再次向我抛出错误。"btnNext无法验证"
您需要将它挂接到正确的元素。
document.getElementById("btnNext").onclick = function() {
//Do Your Stuff Here
};
Angela
嘿,我对我的问题做了一个非常简单的解决方案。首先是ws在页面上单击evry按钮时调用的java脚本代码。
function Validate(sender, args)
{
if (document.getElementById("Panel1").style.display == 'none') {
args.IsValid = false;
}
else {
args.IsValid = true;
}
}
然后点击下一步按钮:
<asp:Button ID="btnNext" runat="server" Text="Next" Font-Bold="True" CssClass="InputButton" OnClick="btnNext_Click" />
<asp:CustomValidator ID="cvValidate" runat="server" ErrorMessage="Panel has no data." ClientValidationFunction="Validate" Display="none" EnableViewState="false"></asp:CustomValidator>
对于其余的按钮,我设置了causesvalidation=false属性。有了这个,函数wwas只能在"下一步"按钮上调用