Method to execute an element update using Prototype. DEPRECATION WARNING:
This helper has been depercated; use RJS instead. See <a
href="/rails/ActionView/Helpers/PrototypeHelper/JavaScriptGenerator/GeneratorMethods">ActionView::Helpers::PrototypeHelper::JavaScriptGenerator::GeneratorMethods</a>
for more information.
# File actionpack/lib/action_view/helpers/deprecated_helper.rb, line 8
def update_element_function(element_id, options = {}, &block)
content = escape_javascript(options[:content] || '')
content = escape_javascript(capture(&block)) if block
javascript_function = case (options[:action] || :update)
when :update
if options[:position]
"new Insertion.#{options[:position].to_s.camelize}('#{element_id}','#{content}')"
else
"$('#{element_id}').innerHTML = '#{content}'"
end
when :empty
"$('#{element_id}').innerHTML = ''"
when :remove
"Element.remove('#{element_id}')"
else
raise ArgumentError, "Invalid action, choose one of :update, :remove, :empty"
end
javascript_function << ";\n"
options[:binding] ? concat(javascript_function, options[:binding]) : javascript_function
end