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 :with or :without you: link_to_remote's mysterious parameter - Space Vatican   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 :with or :without you: link_to_remote's mysterious parameter - Space Vatican   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=”+…