Ruby on rails 带有disable_with的submit_标记未传递到params散列中

Ruby on rails 带有disable_with的submit_标记未传递到params散列中,ruby-on-rails,Ruby On Rails,在rails 3中工作。当我做一些非常简单的事情时,比如: <p><%= submit_tag 'Create' %></p> 我没有得到commit的值。问题是,当我有多个提交按钮时,我希望能够打开提交标签的值。当我设置了:disable_with时,我似乎不能这样做。它应该是datat-disable-with。试试这个 <p><%= submit_tag 'Create', data: {:disable_with => 'Pr

在rails 3中工作。当我做一些非常简单的事情时,比如:

<p><%= submit_tag 'Create' %></p>

我没有得到
commit
的值。问题是,当我有多个提交按钮时,我希望能够打开提交标签的值。当我设置了
:disable_with
时,我似乎不能这样做。

它应该是datat-disable-with。试试这个

<p><%= submit_tag 'Create', data: {:disable_with => 'Processing...'} %></p>
处理…}%>


是的,您是对的,with
:disable\u with
此属性的值将用作disabled submit按钮的值,而不是最初在
submit\u标记中设置的值

文件摘录如下:

:disable_with-此参数的值将用作 提交表单时,“提交”按钮的禁用版本。 此功能由低调的JavaScript驱动程序提供


在此处发布此信息,以防将来有人需要此信息:


该按钮未与表单的其余部分一起提交,因为它已被禁用。(不可否认,这应该是显而易见的。)我的解决方案是创建一个
隐藏字段标记
,在表单提交之前用javascript更新,但感觉有点不雅观。

我使用的是rails 3,而不是rails 4。这不会改变生成的html。此外,问题不在于disable_with不起作用,而是它正确地禁用了按钮。问题是当我这样做时,它没有提交按钮值。问题是,它根本没有在我的参数散列中设置。没有键/值对。如果在
参数
散列中未看到此
键/值
,则它可能与
jquery\u ujs
相关。作为调试步骤,还请通过浏览器的开发人员工具(chrome中的网络选项卡)检查您的请求。我没有使用jquery,我使用的是prototype,我发现(在编辑中发布)的原因是,由于按钮被禁用,因此无法提交。
<p><%= submit_tag 'Create', data: {:disable_with => 'Processing...'} %></p>