Ruby on Rails Sunday, June 18, 2017

> On Jun 18, 2017, at 8:24 PM, fugee ohu <fugee279@gmail.com> wrote:
>
>
>
> On Friday, June 16, 2017 at 6:47:49 PM UTC-4, Walter Lee Davis wrote:
> 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 <fuge...@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>');
> > });
> > });
> >
> >
>
>
> Here's my page souce and js.erb it's not appening anything to the page with the render
>
> <div class="post">
> <p>Doing nothing as usual</p>
>
>
> <a data-remote="true" href="/comments/new?comment%5Bcommentable_id%5D=14&amp;comment%5Bcommentable_type%5D=Post">Comment</a>
> </div>
> <div class="post" id="post_14">
> </div>
>
> $(document).on('turbolinks:load', function(){
> $('#post div').click.(function(){
> var elm = $(this);
> elm.append('<%= form_for @comment do |f| %> <%= f.hidden_field :commentable_id, value: @comment.commentable_id %><%= f.hidden_field :commentable_type, value: @comment.commentable_type %> <div class="field form-group"> <%= f.text_area :body, class: 'form-control' %> </div> <div class="field form-group"> <%= submit_tag "Post comment", class: 'btn btn-primary' %> </div> <% end %>');
> });
> });
>

You've skipped over the last set of instructions I sent you, and you really need to do this in order or it will never make sense. Show me the code you are using that loads the form into another page, and please don't post it unless it is working in a browser and you can save comments. Get that far, and THEN I will be happy to help you take it into Ajax land.

Walter

--
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+unsubscribe@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/83E80992-1013-4ADC-B68B-E5822BE4788F%40wdstudio.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment