1

当用户单击我想在该按钮上进行这些转换时,我想更改为提交按钮的状态。

Text change to "submitting..." and state of that submit button becomes "disabled"

我知道如何使用 Jquery 来做到这一点,例如:

假设按钮有一个#derp id。

$("#derp").click(function(){
   this.toggleClass("pressed");
});

基本上,这将根据其状态从项目中添加或删除“按下”类。只需为 .pressed 添加 css 即可。

#derp {...}
#derp:hover {...}
#derp:active {...}
#derp.pressed {...}

或者我们使用不同的选择器。

问题:ruby on rails 中是否有默认功能。

更新: 我正在使用基于 ajax 的表单提交,当我尝试快速单击 2-3 次表单提交时。它实际上提交了2-3次。我想阻止那件事,我正在使用 simple_form

<%= f.button :submit, "Submit Review", :disable_with => "Processing..." %>
4

2 回答 2

2

您可以使用:disable_with选项:

http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-button_tag

于 2013-01-24T10:40:07.053 回答
1

要使:disable_with与 Ajax Remote 一起使用,您必须编辑您的public/javascripts/rails.js 并更改

document.on("ajax:after", "form", function(event, element) {

document.on("ajax:complete", "form", function(event, element) { 
于 2013-01-24T10:41:09.797 回答