turns out you need to use submit_to_remote:

<% form_tag :url => {:controller => 'foo', :action =>'bar', :month =>
@month,
    :day_number => @day_number, :day_name => @day_name, :id => @id} do
%>
      <%= text_field "request", "request" %><br/>
      <%= submit_to_remote('submit', 'Send Request', :url =>
{:controller => 'foo', :action =>'bar', :month => @month,
          :day_number => @day_number, :day_name => @day_name, :id =>
@id},
          :with => "'time='+timeReturn()", :update =>
'request_sent', :confirm => "sure?") %>
<% end %>

On Oct 16, 10:00 pm, David <[EMAIL PROTECTED]> wrote:
> can anyone help with this syntax?  I figure anything that works for
> link_to_remote has got to work for form_remote_tag.  Does anyone know
> if its possible to use the :with to pass parameters using
> form_remote_tag?  This is what I have so far, but the params[:time]
> passed in :with is still nil and it works with link_to_remote.
>
>     <%= form_remote_tag :url => {:controller => 'requests', :action
> =>'create', :month => @month,
>         :day_number => @day_number, :day_name => @day_name, :id =>
> @id},
>         :with => "'time='+timeReturn()", :update => 'request_sent'  %>
>         <%= text_field "request", "request" %><br/>
>         <%= submit_tag('Send Request') %>
>     <% end -%>
>
> All the other params, i.e. month and day_number are passed, so i know
> the general syntax is working, its just the :with that is giving me a
> problem.
>
> On Oct 3, 2:30 am, David <[EMAIL PROTECTED]> wrote:
>
> > Oh i forgot to include the <% end %> code.  I have that and it still
> > does not work.
>
> > On Oct 3, 2:20 am, David <[EMAIL PROTECTED]> wrote:
>
> > > So this returns the correct value in params[:data]:
> > >     <%= link_to_remote 'Send Request', :url => {:controller =>
> > > "requests", :action => "create",
> > >       :date => @date, :weekday => @weekday, :id => @id}, :with =>
> > > "'data='+newFunction()",
> > >       :update => 'request_sent' %>
>
> > > but this returns nil:
> > >         <% form_remote_tag(:url => {:controller => 'requests', :action
> > > =>'create'},
> > >           :with => "'data='+newFunction()", :update => 'request_sent')
> > > do %>
> > >         <%= text_field "request", "request" %><br/>
> > >         <%= submit_tag 'Send Request' %>
>
> > > am I using :with within the form_remote_tag helper correctly?  Are you
> > > able to use it with form_remote_tag?  Thanks.
>
> > > On Oct 3, 1:46 am, Frederick Cheung <[EMAIL PROTECTED]>
> > > wrote:
>
> > > > On Oct 3, 9:43 am, David <[EMAIL PROTECTED]> wrote:
>
> > > > > result() is the name of a javascript function that I have defined
> > > > > within a script in the head element.  calling it in :with sets this
> > > > > result to data, which can then be accessed with params[:data] in the
> > > > > action create.
>
> > > > Well your initial post is using a function called request :-)
> > > > Make sure your function returns appropriately format data, other than
> > > > that you're going to have to be more explicit about how it doesn't
> > > > work.
>
> > > > Fred
>
> > > > > On Oct 3, 1:34 am, Frederick Cheung <[EMAIL PROTECTED]>
> > > > > wrote:
>
> > > > > > On Oct 3, 7:43 am, David <[EMAIL PROTECTED]> wrote:> I am trying to 
> > > > > > pass the result from a javascript function along with
> > > > > > > the result from a text_field with form_remote_tag.  This is what I
> > > > > > > have so far, but no go:
>
> > > > > > >     <% form_remote_tag(:url => {:controller => 'requests', 
> > > > > > > :action =>
> > > > > > > 'create'},  :with => "'data='+request()", :update => 
> > > > > > > 'request_sent' )
> > > > > > > do %>
> > > > > > >         <%= text_field "request", "request" %><br/>
> > > > > > >         <%= submit_tag 'Send Request' %>
> > > > > > >     <% end %>
>
> > > > > > Short answer: learn more javascript
> > > > > > Long Answer: The behaviour of with is basically identical for
> > > > > > link_to_remote and form_remote_tag. There is no function called
> > > > > > request, so this can't work as is. Functions are not automatically
> > > > > > added for input element. $F('foo') returns the value of the element
> > > > > > with id foo and should do the trick (just check in the generated 
> > > > > > html
> > > > > > what the id of the text field is). I also wrote some stuff about 
> > > > > > :with
> > > > > > athttp://www.spacevatican.org/2008/5/17/with-or-without-you-link_to_rem...
> > > > > > Having said all that you don't need any of that here - the form will
> > > > > > submit the value of the text field anyway, no :with needed.
>
> > > > > > Fred
>
> > > > > > Fred
>
> > > > > > > I was able to get this to work with link_to_remote with the 
> > > > > > > following
> > > > > > > code:
>
> > > > > > > <br/><%= link_to_remote 'Update availability', :url => {:action =>
> > > > > > > "array"}, :with => "'data='+test()", :update => 'testing' %>
>
> > > > > > > where test() is the javascript function.  This allows me to 
> > > > > > > access the
> > > > > > > result of the test function in params[:data].  It seems that I 
> > > > > > > should
> > > > > > > be able to do the same with form_remote_tag, but I have been
> > > > > > > unsuccessful.   Maybe a syntax mistake?  Maybe not possible?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to