Few Questions about form_for_remote


#1

Still learning some stuff so forgive the newbie type questions.

  1. if i use the :update param on form_for_remote can I mix javascript
    and ruby? i want to use the selector offered by prototype but pass in
    the parameters from a ruby expression

<% form_remote_for(userdrug, :loading => “$(‘XXXX’).show();” + “alert
(‘hi’);” do |f| %>

I would basically like in where XXXX is to have an ruby expression
like object.id

  1. Can you use RJS commands for :loading ? seems like not :frowning:

  2. for the button:

<%= f.submit “Update”, :disable_with => “Please wait…” %>

I would like it to be disabled until the request ir returned however
using the above only disables it momentrily whil it is sending the
request and then it can be pressed again even before the sever
responds.

Thanks!


#2

figured out answer to the first one:

<% form_remote_for(userdrug, :loading => “$(’” + user.id + “’).show
();” + “alert(‘hi’);” do |f| %>


#3

On Mar 25, 5:22 pm, “tashfeen.ekram” removed_email_address@domain.invalid wrote:

like object.id
That’s a ruby string, you can put whatever ruby expression you want
(of course this is evaluated when the template is rendered, not when
you press submit

  1. Can you use RJS commands for :loading ? seems like not :frowning:

You can via update_page (an ajax responder is often cleaner though).
You’ll write better JS once you get over RJS

  1. for the button:

<%= f.submit “Update”, :disable_with => “Please wait…” %>

I would like it to be disabled until the request ir returned however
using the above only disables it momentrily whil it is sending the
request and then it can be pressed again even before the sever
responds.

Personally I would do that via an ajax callback. The code for submit
looks it would undisable the button if the onsubmit returns false
(which the one remote_form_for will do since it’s preventing the
browser from submitting the form normally)

Fred


#4

On Wed, Mar 25, 2009 at 12:22 PM, tashfeen.ekram
removed_email_address@domain.invalid wrote:

  1. if i use the :update param on form_for_remote can I mix javascript
    and ruby? i want to use the selector offered by prototype but pass in
    the parameters from a ruby expression

You can, but in some case you may find an RJS template easier to deal
with, especially if you have complex logic after the form post. I
usually just use :loading and :completed in my form tag and then do my
update using replace_html instead of :update.

  1. Can you use RJS commands for :loading ? seems like not :frowning:

I’ve never tried, but yeah I think not also.

  1. for the button:

<%= f.submit “Update”, :disable_with => “Please wait…” %>

I would like it to be disabled until the request ir returned however
using the above only disables it momentrily whil it is sending the
request and then it can be pressed again even before the sever
responds.

That sounds like a bug to me.


Greg D.
http://destiney.com/