一个简单的例子:
出生日期(DOB)验证-3个选择列表:
第一个列表-每月的天数(1-31)
第二个列表-一年中的月份(1月至12月)
第三次上榜年份(1940-1989)
失去这些选择列表中任何一个的焦点,Javascript函数将验证DOB。
如果DOB无效,即1977年2月31日,则使用addClass方法将类别input-validation-error
应用于3个选择列表。
如果有效,类别input-validation-error
将从3个选择列表中删除。
似乎input-validation-error
正在更改选择列表的高度。
有没有办法阻止这种情况,因为我试着增加班级的高度,但这无济于事。
在Firefox中加载页面,并使用FireBug检查有问题的元素。确定应用input-validation-error
时更改元素高度的css属性。然后基于此进行修复。
看起来您正在使用MVC3的非结构化验证。只需将ValidationMessageFor移动到与选择列表不同的元素中,这样选择列表的css就不会更改。您可以通过更改$.validator设置来覆盖/调整验证(从行为到样式)。看看这里