如何防止表单在rails中使用javascript提交?

如何防止表单在rails中使用javascript提交?,javascript,ruby-on-rails,Javascript,Ruby On Rails,我的选择标记是使用rails视图创建的,如下所示: <%= f.submit class: 'btn btn-default', onSubmit: 'return stripDropdowns(this.form);' %> <!-- I have also tried just on click event --> rails中是否有我所缺少的可能导致此问题的东西?还是我的javascript错了?希望有人能看到我没有看到的东西。谢谢。最简单的方法是不要使用提交按钮

我的选择标记是使用rails视图创建的,如下所示:

<%= f.submit class: 'btn btn-default', onSubmit: 'return stripDropdowns(this.form);' %>
<!-- I have also tried just on click event -->

rails中是否有我所缺少的可能导致此问题的东西?还是我的javascript错了?希望有人能看到我没有看到的东西。谢谢。

最简单的方法是不要使用提交按钮,而是使用“正常”按钮:

<%# "button_tag(type: 'button')" creates at button that doesn't submit the form %>
<%= button_tag class: 'btn btn-default', type: 'button', onClick: 'return stripDropdowns(this.form);' %>

很好。我没想到。但我不明白的是,为什么每个教程和答案都使用提交按钮?显然,它似乎在某种程度上像他们所说的那样起了作用。我不知道只有DOM才能解决这个问题。我通常使用jQuery和
event.preventDefault()
使表单停止提交。你想让我编辑答案并添加它作为替代吗?啊,我明白了。如果您为将来有相同问题的人添加它,那将是非常棒的。jquery似乎正在覆盖提交表单的默认行为(基于方法名)。但你的回答正是我需要的。感谢您抽出时间:)
<%# "button_tag(type: 'button')" creates at button that doesn't submit the form %>
<%= button_tag class: 'btn btn-default', type: 'button', onClick: 'return stripDropdowns(this.form);' %>