【问题标题】:If using :remote=>true in form_for, jquery livevalidations shows error messages, But form get submitted如果在 form_for 中使用 :remote=>true,jquery livevalidations 会显示错误消息,但会提交表单
【发布时间】:2014-09-19 06:21:34
【问题描述】:

我正在为我的表单使用 jquery livevalidations,并为此表单使用 :remote => true。当我提交表单时,livevalidations 向我显示字段错误,然后表单也被提交。然后由于服务器端验证操作得到回滚。

如果我对任何形式使用 :remote => true,Livevalidations 都不起作用。

【问题讨论】:

  • 你通过Model验证了吗?

标签: jquery ruby-on-rails livevalidation


【解决方案1】:

从您的描述中可以清楚地看出您的表单验证工作正常。但是由于您的表单中有按钮提交,因此虽然验证失败,但它会被提交。

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

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

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

【讨论】:

    猜你喜欢
    • 2019-12-20
    • 1970-01-01
    • 1970-01-01
    • 2019-07-16
    • 2022-11-18
    • 2012-12-18
    • 1970-01-01
    • 2013-04-12
    • 1970-01-01
    相关资源
    最近更新 更多