[rails] Clean incrementer across Ajax calls?

N

Nate Murray

Hey all, I want to have an ajax call that increments a number each time
it is
called. Basically I have want to render a partial that contains a call
to
append that same partial again at the end of the div. Perhaps it will
help
if I give the example code.

So in my view.rhtml i have:
=== view.rhtml ===
<div id="where_clause_div">
<%= link_to_remote 'Add',
{ :update => 'where_clause_div',
:url => { :action => :make_where_clause },
:position => :after} %><br />
</div>

And in my controller I have:
=== controller.rb ===
....
def make_where_clause
@where_clause_id = 1 unless @where_clause_id; # This is always 1
render :partial => 'where_clause',
:locals => { :clause_id => @where_clause_id }
@where_clause_id += 1
end
....

And the partial is:
=== _where_clause.rhtml ===
<div class="where_clause" id="where_clause_<%= @where_clause_id %>">
The ID is: <%= @where_clause_id %>
<%= link_to_remote 'Add',
{ :update => 'where_clause_div',
:url => { :action => :make_where_clause },
:position => :after} %>
</div>


My end goal is to get the "where_clause" div id in the partial to be
incremented on each ajax call. The only requirement is that I can't
have
the partial just increment its own variable because the 'add' link will

remain on each of the divs.

Is there a clean way (short of a session variable) to do what I am
looking to do?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,567
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top