There can only be one instance of an ID on any given page. And nothing you did in this example will render the id #commentable. If you look at my example, I did not use an ID on each element. The selector in $('#commentable').each should be $('#parent_of_the_list div'), and you'll have to apply whatever ID you want to search for to a parent element of the commentables. If you want to do this in a slightly simpler manner, you could apply a classname to the commentables, using the div_for helper: <%= div_for(commentable, class: 'commentable') do %>. Then you can change the jQuery to $('.commentable') and that will also work.
Walter > On Jun 16, 2017, at 4:14 PM, fugee ohu <fugee...@gmail.com> wrote: > > The anchor doesn't get rendered I didn't know what to use for the element > name so I used the same as I used the same variable I passed to div_for in my > view, commentable Thanks in advance > > > View: > <%= div_for(commentable) do %> > <% end %> > > js.erb > $(document).on('turbolinks:load', function(){ > $('#commentable').each(function(){ > var elm = $(this); > elm.append('<a href="/comments/new?commentable_id=' + > elm.attr('id').split('_')[1] + '">Comment</a>'); > }); > }); > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/5AF15F80-CAA4-4873-AB7D-58F5544F7F6A%40wdstudio.com. For more options, visit https://groups.google.com/d/optout.