1

有没有办法让自定义验证器从两个控件中获取输入,例如两个复选框并确保只选中一个?

或者我是否将这一切都错了,更重要的是,如果我是,你能指出我正确的方向吗?

即使这是错误的方向,我也想知道如何做到这一点,以防我遇到适用的情况,那就是如果可能的话。

感谢您提前提供帮助。

4

5 回答 5

2

如果您想确保仅选中两个复选框中的一个,则说明您使用了错误的控件。

使用单选按钮设置独占选择。

于 2010-05-11T15:15:38.413 回答
1

我同意 Mitchel 的观点,即 RadioButton 似乎更合适。

但是您是否尝试过连接 CompareValidator 并将其设置为验证 UnEqual?

于 2010-05-11T15:17:39.437 回答
1

AJAX 控件工具包有一个专有的复选框列表。我同意它的需要,因为单选按钮不能像复选框一样被取消选择。

如果您正在寻找自定义验证器,听起来您要么在服务器端进行,此时您可以在后面的代码中执行您想要的任何逻辑。相反,您可以滚动自己的 javascript 来强制执行它。

于 2010-05-11T15:17:51.537 回答
1

我也在研究类似的问题。我解决这个问题的方法是为我的每个控件创建一个验证器,并将它们链接到相同的方法,以确保您的验证限制是什么。

protected void validator1_ServerValidate(...){
  myValidationMethod(...);
}

protected void validator2_ServerValidate(...){
  myValidationMethod(...);
}

它有效,但它很丑 IMO

于 2011-06-08T14:46:52.457 回答
1

我写了一篇关于这件事的博客文章。

http://coding.infoconex.com/post/2010/10/11/ASPNET-CustomValidator-that-validates-multiple-controls-using-both-Server-Side-and-Client-Side-scripting

结合客户端和服务器端验证并重新验证

于 2010-10-14T04:21:57.570 回答