RespondsToParent
Adds responds_to_parent to your controller to respond to the parent document of your page. Make Ajaxy file uploads by posting the form to a hidden iframe, and respond with RJS to the parent window.
Example
Controller
class Test < ActionController::Base
def main
end
def form_action
# Do stuff with params[:uploaded_file]
responds_to_parent do
render :update do |page|
page << "alert($('stuff').innerHTML)"
end
end
end
end
main.rhtml
<html>
<body>
<div id="stuff">Here is some stuff</div>
<form target="frame" action="form_action">
<input type="file" name="uploaded_file"/>
<input type="submit"/>
</form>
<iframe id='frame' name="frame"></iframe>
</body>
</html>