我有一个经过验证的无线电组。它工作正常,除非在某些情况下我需要禁用第一个单选按钮,让用户从剩余中选择一个。即使在这种情况下,无线电也会被验证,但不会显示错误消息。我相信这是由于错误消息与第一台收音机有关。禁用除第一个以外的其他收音机也可以。有办法吗?
问问题
1030 次
2 回答
0
我正在使用 jQuery Validate 1.6 插件,在检查 1.7 更改日志后,它看起来并没有被修复。
发生这种情况的原因是验证插件中存在一个错误,如果第一个单选按钮被禁用,则该组中的其余单选按钮不会被视为无效。
如果您单步执行插件代码,您会在 defaultShowErrors 函数中看到,它会首先突出显示您的无线电组,然后取消突出显示它。
你可以在你自己的 unhighlight方法中解决这个问题,方法是在你做任何 unhighlighting 之前添加这个。
注意:这是一个创可贴解决方案。
if (this.invalid[$e.attr('name')] !== undefined) { return; }
这将检查无线电组名称是否列在无效列表中。如果是,它将停止取消突出显示。
于 2011-02-01T16:17:02.613 回答