How to get select_tag value in controller?

I use select_tag to create a selection box in a view and how can I get
the current selection value in its controller? For example:

select_tag:project_selection,options_for_select(@project_names),
          :onchange
=>remote_function(:update=>'posts',:loading=>'false',
          :url => { :action => :update_project_selection })

in the action "update_project_selection", how can I get the current
selection?

thanks,

Check source code and find <select name="xxx">

The xxx value is what you can access with params[:xxx]

zero0x wrote:

Check source code and find <select name="xxx">

The xxx value is what you can access with params[:xxx]

--

Good advice: Download Firebug plugin for Firefox, which shows all the
communication between page and server, and you'll see all the POST
variables with the values :slight_smile:

On 28. Dec., 14:08 h., Zhao Yi <rails-mailing-l...@andreas-s.net>

In this case:

select_tag: project_selection,options_for_select(@project_names),
:onchange =>remote_function(:update=>'posts',:loading=>'false', :url =>
{ :action => :update_project_selection })

the name should be "project_selection", but in its controller I print
the params keys:

params.keys.each{|k|puts k}

there is not such key named "project_selection".

zero0x wrote:

Check source code and find <select name="xxx">

The xxx value is what you can access with params[:xxx]

--

Good advice: Download Firebug plugin for Firefox, which shows all the
communication between page and server, and you'll see all the POST
variables with the values :slight_smile:

On 28. Dec., 14:08 h., Zhao Yi <rails-mailing-l...@andreas-s.net>

In this case:

select_tag: project_selection,options_for_select(@project_names),
:onchange
=>remote_function(:update=>'posts',:loading=>'false', :url =>
{ :action => :update_project_selection })

the name should be "project_selection", but in its controller I print
the params keys:

You have to tell remote function what to submit, it's not going to
guess for you.
This is what the :with option for remote_function is for. Check the
docs for link_to_remote for some examples, I've got some extra ones at http://www.spacevatican.org/2008/5/17/with-or-without-you-link_to_remote-s-mysterious-parameter
  too

Fred

Frederick Cheung wrote:

You have to tell remote function what to submit, it's not going to
guess for you.
This is what the :with option for remote_function is for. Check the
docs for link_to_remote for some examples, I've got some extra ones at
http://www.spacevatican.org/2008/5/17/with-or-without-you-link_to_remote-s-mysterious-parameter
  too

Fred

If I added :with in the select_tag:

:with=>"'project_selection=+'XXX"

what's value should I use for the current selection?

I suppose you're using prototype, so you just need to get the value of
the select box.

$("id-of-the-element").getValue()

untitled
By sending JSON:

{name: value, name1:value1, … }

in your case

{name: $(“id-of-the-element”).getValue()}

or something similiar.

untitled
Oh I’m sorry that was probably wrong advice :slight_smile:

Forget about it.

I just realized, that you’re sending a http query, which looks like:

name=value&name1=value1&…

So it’s pretty simple:

query = “name=”+…+"&name1="+…