2014-12-31 2 views
0

Я создаю список кнопок в Rails динамически.Как передать динамически сгенерированный id div в javascript в Rails

<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> 

Теперь мне нужно получить доступ к редактированию _ # {exam.name} div динамически. Для каждого динамически созданного div мне нужно вызвать событие click.

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


</script> 

ответ

2

Вместо динамического класса создавать динамические идентификатор и прямой трансляции события на классе записи следующий код:

 <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> 
+0

[По состоянию на JQuery 1.7, метод .live() является устаревшим. Используйте .on() для присоединения обработчиков событий] (http://api.jquery.com/live/). – anpsmn

Смежные вопросы