Rails 4: Disable submit button after click

jquery, ruby-on-rails, ruby-on-rails-4, ujs

Solution

The problem was caused by invalid HTML code. See <div> breaks <form> `disable_with` works now

Problem

I have a `form_tag(foo_path(@foo), remote: true, id: 'foo-form'` form and a submit button `submit_tag ("Submit", :id => "foo-submit")` I'd like to disable the submit button after it has been clicked. Obviously, I cannot use something like `onlick="jQuery(this).prop('disabled', true);"` because it would break the remote functionality. I'm aware of the `:disable_with` data attribute for the submit_tag but it doesn't seem to work for me. It does generate the right form code but it has no effect. I'm not sure why it doesn't work but it might be due to the fact that I use prototype (legacy reasons) and jquery at the same time. Though, I only load `ujs` for jquery and not for prototype. However, all other `query_ujs` features work very well. Is there another way to disable the submit button?

Original source