如果在form_for中使用:remote => true,则jquery livevalidations会显示错误消息,但表单将被提交

时间:2014-09-19 06:21:34

标签: jquery ruby-on-rails livevalidation

我正在为我的表单使用jquery livevalidations,并且还使用:remote =>这个表格是真的。当我提交表单时,livevalidations会显示字段的错误,但之后也会提交表单。然后由于服务器端验证操作得到回滚。

如果我使用的话,Livevalidations不起作用:remote =>任何形式都是如此。

1 个答案:

答案 0 :(得分:2)

从您的说明中可以清楚地看到您的表单验证工作正常。但是,当您在表单中提交按钮时,虽然验证失败,但仍会提交。

您需要从表单中删除提交按钮并将其设为简单按钮。单击该简单按钮,您需要验证字段,如果一切正常,则从您的jquery代码提交表单。如果您没有正确验证所有字段,则需要返回false。

您还可以在jquery验证部分中使用preventDefault()函数来限制表单的提交。

如果您不打算提供旧版本的浏览器,那么您只需使用html5验证即可。您只需将require => true放在视图中即可完成。