我想更改我在simple_form中提交按鈕的默認行爲,這樣我就不必爲所有表單明確指定:disable_with => true。我怎樣才能在simple_form.rb中做出這個特殊的改變?simple_form提交的缺省disable_with
6
A
回答
3
將此覆蓋添加到我的simple_form.rb中,就像魅力一樣工作!
SimpleForm::FormBuilder.class_eval do
def submit_with_override(field, options = {})
submit_without_override(field, {:disable_with => 'saving...'}.merge(options))
end
alias_method_chain :submit, :override
end
5
這在新版Rails中稍有不同,因爲設置屬性disable_with已被棄用。我寫這個文章:http://www.railsonmaui.com/blog/2014/02/23/simple-form-and-disable-processing-by-default/
這裏的新代碼:
SimpleForm::FormBuilder.class_eval do
def submit_with_override(field, options = {})
data_disable_with = { disable_with: 'Processing...' }
options[:data] = data_disable_with.merge(options[:data] || {})
submit_without_override(field, options)
end
alias_method_chain :submit, :override
end
多虧@Appster的想法!
2
根據ActionView::Helpers::FormBuilder.submit,f.button
取決於1〜2個參數,所以下面的代碼都應該工作。
f.submit "MyText", class: "my-btn"
f.submit class: "my-btn"
在我的情況下,添加該代碼初始化文件的罰款。
SimpleForm::FormBuilder.class_eval do
def submit_with_override(value=nil, options={})
value, options = nil, value if value.is_a?(Hash)
data_disable_with = { disable_with: 'Processing...' }
options[:data] = data_disable_with.merge(options[:data] || {})
submit_without_override(value, options)
end
alias_method_chain :submit, :override
end
希望它有幫助。
0
它沒有覆蓋提交按鈕是使用Rails 5
module DisableDoubleClickOnSimpleForms
def submit(field, options = {})
if field.is_a?(Hash)
field[:data] ||= {}
field[:data][:disable_with] ||= field[:value] || 'Processing...'
else
options[:data] ||= {}
options[:data][:disable_with] ||= options[:value] || 'Processing...'
end
super(field, options)
end
end
SimpleForm::FormBuilder.prepend(DisableDoubleClickOnSimpleForms)
相關問題
- 1. :disable_with提交按鈕,Rails 3,JQuery
- 2. 的Rails 3.1 simple_form提交風格CSS
- 3. simple_form缺少翻譯
- 4. Rails - 有條件的:disable_with on表單提交按鈕
- 5. 的Rails 3:在提交按鈕:disable_with不工作
- 6. rails simple_form提交按鈕與確認
- 7. IBM Cognos Report Studio:提示「缺省文本」參數中的值提示缺省選擇
- 8. 如何做一個缺省行的缺省值的mysql連接
- 9. git fetch - 缺失提交
- 10. Gitlab缺省爲localhost
- 11. 具有缺省值
- 12. 缺省初始化
- 13. 顯示缺省值
- 14. Bluemix缺省組織
- 15. 顯示缺省值
- 16. 無缺省選擇
- 17. 父解構的缺省值
- 18. PATH變量的缺省值
- 19. 空節點的缺省值
- 20. DATETIME字段的缺省值
- 21. errno變量的缺省值
- 22. 方法的缺省參數?
- 23. AngularJS ng-style的缺省值
- 24. Node.js中的缺省SIGINT?
- 25. Zend的2缺省路由
- 26. SQLite的VARCHAR缺省大小
- 27. 重新提交simple_form未定義的方法attachment_field
- 28. XSD中未提及的構面的缺省值是什麼
- 29. I18n.t翻譯缺失缺省值無
- 30. git svn - 獲取缺少的svn提交?
對我來說,兼容所有現有的數據 - 屬性,這一點也適用一些按鈕,而不是別人。具體來說,它可以用'<%= f.button:submit%>'但不能,例如'<%= f.button:button%>'你能解釋一下代碼是做什麼的嗎?我可能會調整我自己的設置? – spume 2014-01-20 14:59:54