【发布时间】:2012-11-13 13:39:56
【问题描述】:
我正在使用 ASP.NET Pages 和 CustomValidator 控件来验证控件集。另外我正在使用 ClientValidation 属性和我的自定义 javascript 函数。我的主要问题是:当我设置“ControlToValidate”属性时 - 验证函数停止调用。我已经检查了两次,为验证器和控件设置了 ID 以进行验证,但仍然没有结果。
有人知道如何解决我的问题吗?
附:我需要设置 ControlToValidate 属性的主要原因是我想在失去控制焦点后立即触发验证
更新: 这是验证器:
<asp:CustomValidator ID="cvEmail1" runat="server" ClientValidationFunction="ValidateEmail"
Display="Dynamic" EnableClientScript="True" ForeColor="Red" ErrorMessage="This field is required"/>
这是验证功能:
<script type="text/javascript">
function ValidateEmail(sender, args) {
var isValid = myCheck();
args.IsValid = isValid;
}
</script>
【问题讨论】:
-
请发布您的代码示例。
-
控件是否包含文本或为空。如果是后者,您应该将
ValidateEmptyText设置为true。 ListControls(SelectedIndex == -1) 也是如此。 PS:您也可以使用Page_ClientValidate("validationGroup")强制客户端验证onblur。 -
控件不包含空文本。其实可以,但这不是我的情况
-
Tim Schmelter - 请向我道歉,看来 ValidateEmptyText=true 真的很有帮助。但是天哪 - 当 ControlToValidate 不为空时它就不起作用了!