Suganya
Suganya

Reputation: 741

How to pass dynamically generated div's id to javascript in Rails

I am creating a list of buttons in Rails dynamically.

  <ul>
     <% @exams.each do |exam| %>
       <li><%= link_to exam.name, card_exam_path(:id => exam.id), :class => 'simple-button course-type', :method => :get %>
        <div class="edit_#{exam.name}">&nbsp;</div></li>
      <% end %>
 </ul>

Now I need to access the edit_#{exam.name} div in dynamically. For every dynamically generated div I need to trigger 'click' event.

<script type="text/javascript">
    *******Here I need to access all the divs seperately. How do I do that?


</script>

Upvotes: 0

Views: 1044

Answers (1)

Triveni Badgujar
Triveni Badgujar

Reputation: 941

Instead of dynamic class create dynamic id and using live event on class write following code:

     <ul>
         <% @exams.each do |exam| %>
           <li><%= link_to exam.name, card_exam_path(:id => exam.id), :class => 'simple-button course-type', :method => :get %>
            <div class="edit_exam" id="edit_#{exam.name}">&nbsp;</div></li>
          <% end %>
     </ul>

    <script type="text/javascript">
      $('.edit_exam').live('click', function(){
        **** Here access div using $(this)

    });

</script>

Upvotes: 2

Related Questions