I think the best option would be make an ajax call to a controller and pass in the paramaters through that.
Then, with the returned information, you should repopulate the parts of the page that need to be repopulated.
In your routes, you'll want something like this:
get "article/between_years", :controller=>"article", :action=>"between_years"
and in your controller, you'll have the function
def between_years
@articles = Article.where(:year => params[start_year]...params[start_year])
render :layout=>false ### this line makes it so the application.haml (or html.erb) is not rendered along with your code)
end
and in the directory app > views > articles, you'll have the haml, or erb file with the html you'll be wanting to add in.
then your jquery will look something like this:
$.get("/article/between_years",{start_year:1991,end_year:2011},function(data, status, xhr){ /// does ajax call to the article route we set up above /
..
$("body").append(data); ///appends the html data returned to the body
///you will probably want to change this a bit
///so every thing is added to the proper place
...
});
I wrote another answer a little while ago that outlined a simular work flow, you may want to take a look at that => Auto populate text_fields based on selected item from another collection_select in Rails 3