I have a form that I would like to submit with the data-remote=true
option. But I want to have my create action return json, then have that handled by javascript that already exists on the page. Can I set a callback inline with the form_for tag?
Something similar to this:
=form_for @foo,:remote => true, :success => "my_js_stuff" do |f|
I'm not sure if it will be possible without overriding rails form helper. But you can use jquery ajax events and bind to them. For example:
$('form#sign-up-form').ajaxError(function(event, request, settings) {
//do some stuff on error
})
$('form#sign-up-form').bind('ajax:success', function(evt, data, status, xhr){
//do some stuff on success
})
You'll want to define a create.js.erb and/or update.js.erb for the foo controller. That will return javascript that you'll execute.
From there, you can execute javascript that already exists on the page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With