带有disable_with的submit_tag不会传递给params哈希

时间:2013-12-31 14:46:43

标签: ruby-on-rails

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

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

我在动作中的params哈希中得到commit: Create键/值对。但是,只要我添加disable_with

<p><%= submit_tag 'Create', :disable_with => 'Processing...' %></p>

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

3 个答案:

答案 0 :(得分:0)

应该是data-disable-with。试试这个

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

答案 1 :(得分:0)

是的,您是对的,:disable_with此属性的值将用作已禁用的提交按钮的值,而不是submit_tag中最初设置的值。

摘自submit_tag文档:

  

:disable_with - 此参数的值将用作值   提交表单时提交按钮的禁用版本。   此功能由不显眼的JavaScript驱动程序提供。

答案 2 :(得分:0)

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

该按钮未与表单的其余部分一起提交,因为它已被禁用。 (诚​​然,这应该是显而易见的。)我的解决方案是创建一个hidden_field_tag,在表单提交之前用javascript更新,但感觉有点不雅。