覆盖client_side_validations行为以验证隐藏字段

mus*_*oom 1 ruby-on-rails client-side-validation

我在Rails 3.1.0中使用client_side_validations gem.我一直在尝试使用它来验证通过javascript小部件设置的隐藏字段.根据我在gem的github页面上读到的内容,gem故意不会验证隐藏字段,因为用户无法更正这些字段.我没有成功尝试覆盖此行为.

有没有办法在不修改client_side_validations代码的情况下覆盖特定字段的此行为(除了安装gem时生成的init内容)?

我现在的方法是对gem中的validateForm函数稍作修改.当它查找要验证的字段时,只会抓取可见的元素:

form.find(':input:enabled:visible[data-validate]').each(function() 
Run Code Online (Sandbox Code Playgroud)

所以我改变了这个:

form.find(':input:enabled[data-validate]').each(function() 
Run Code Online (Sandbox Code Playgroud)

这似乎有效.有没有更好的办法?

当用户纠正错误时,我无法重新验证隐藏字段.

bca*_*lla 5

如果要验证隐藏字段是如何执行的