diff options
Diffstat (limited to 'actionpack/lib/action_view/helpers')
-rw-r--r-- | actionpack/lib/action_view/helpers/javascript_helper.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/actionpack/lib/action_view/helpers/javascript_helper.rb b/actionpack/lib/action_view/helpers/javascript_helper.rb index 584f33f81d..9e91cd189e 100644 --- a/actionpack/lib/action_view/helpers/javascript_helper.rb +++ b/actionpack/lib/action_view/helpers/javascript_helper.rb @@ -92,6 +92,20 @@ module ActionView tag("form", options[:html], true) end + + # Returns a button input tag that will submit form using XMLHttpRequest in tghe background instead of regular + # reloading POST arrangement. <tt>options</tt> argument is the same as in <tt>form_remote_tag</tt> + def submit_to_remote(name,value,options = {}) + options[:with] = 'Form.serialize(this.form)' + + options[:html] ||= {} + options[:html][:type] = 'button' + options[:html][:onclick] = "#{remote_function(options)}; return false;" + options[:html][:name] = name + options[:html][:value] = value + + tag("input", options[:html], false) + end def remote_function(options) #:nodoc: for now javascript_options = options_for_ajax(options) |