aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-03-12 17:00:03 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-03-12 17:00:03 +0000
commit1d4e86b0b9db095ef54aad7bea3110fb9ccd75ad (patch)
tree18fa387954753fa3cb77d96e5dfdeae506ff8d3b /actionpack
parent48739f3a499452969f3a59ee5ebc4f02e429ea0a (diff)
downloadrails-1d4e86b0b9db095ef54aad7bea3110fb9ccd75ad.tar.gz
rails-1d4e86b0b9db095ef54aad7bea3110fb9ccd75ad.tar.bz2
rails-1d4e86b0b9db095ef54aad7bea3110fb9ccd75ad.zip
Checked in some documentation for JavascriptHelper
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@892 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_view/helpers/javascript_helper.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/actionpack/lib/action_view/helpers/javascript_helper.rb b/actionpack/lib/action_view/helpers/javascript_helper.rb
index d072546a63..0818d2e827 100644
--- a/actionpack/lib/action_view/helpers/javascript_helper.rb
+++ b/actionpack/lib/action_view/helpers/javascript_helper.rb
@@ -4,6 +4,12 @@ module ActionView
module Helpers
# You must call <%= define_javascript_functions %> in your application before using these helpers.
module JavascriptHelper
+ # Returns a link that'll toggle the visibility of the DOM objects which ids are mentioned in +tags+. If they're visible, we hide them,
+ # and vice versa. This is particularly useful for hiding and showing input and edit forms on in-page elements.
+ #
+ # Examples:
+ # link_to_toggle_display "Toggle controls", "control_box"
+ # link_to_toggle_display "Add note", %w( add_link add_form )
def link_to_toggle_display(name, tags, html_options = {})
html_options.symbolize_keys!
toggle_functions = [ tags ].flatten.collect { |tag| "toggle_display_by_id('#{tag}'); " }.join
@@ -13,6 +19,11 @@ module ActionView
)
end
+ # Returns a link that'll trigger a javascript +function+ using the onclick handler and return false after the fact.
+ #
+ # Examples:
+ # link_to_function "Greeting", "alert('Hello world!')"
+ # link_to_function(image_tag("delete"), "if confirm('Really?'){ do_delete(); }")
def link_to_function(name, function, html_options = {})
content_tag(
"a", name,
@@ -20,6 +31,14 @@ module ActionView
)
end
+ # Returns a link to a remote action defined by <tt>options[:url]</tt> (using the url_for format) that's called in the background
+ # using XMLHttpRequest. The result of that request can then be inserted into a DOM object who's id can be specified
+ # with <tt>options[:update]</tt>. Usually, the result would be a partial prepared by the controller with either render_partial
+ # or render_partial_collection.
+ #
+ # Examples:
+ # link_to_remote "Delete this post", :update => "posts", :url => { :action => "destroy", :id => post.id }
+ # link_to_remote(image_tag("refresh"), :update => "emails", :url => { :action => "list_emails" })
def link_to_remote(name, options = {})
link_to_function(name, remote_function(options))
end