weixin_33717117 2016-03-13 18:20 采纳率: 0%
浏览 24

AJAX渲染400错误

The goal is to load the comment for each article on my index page using AJAX.

I'm getting a bad request error 400:

ERROR bad URI `/comments/%3C%=%20comment.id%20%%3E?_=1457892605480'.

Index:

 #welcome/index.haml
    - @articles.each do |article|
       = article.title
       - article.comments.each do |comment|
         %comment-content{ :id => "comment-<%= comment.id %>", :class => "comment-content", "data-comment-id" => "<%= comment.id %>"}

JS:

    #comments.js
    var loadComment = function() {
    return $('.comment-content').each(function() {
    var comment_id = $(this).data('comment-id');
    return $.ajax({
      url: /comments/+comment_id,
      type: 'GET',
      dataType: 'script',
      error: function(jqXHR, textStatus, errorThrown) {
        return console.log("AJAX Error: " + textStatus);
      },
      success: function(data, textStatus, jqXHR) {
        return console.log("Worked OK!");
      }
    });
  });
};

$(document).ready(loadComment);

$(document).on('page:change', loadComment);

Show:

 #comments/show.js.erb
 $('#comment-<%= @comment.id %>').append('j render(@comment.content)');

Routes:

resources :articles do
      resources :comments do
      end
end
  • 写回答

2条回答 默认 最新

  • weixin_33681778 2016-03-13 20:25
    关注

    your url needs to be a string:

    url: "/comments/" + comment_id
    
    评论

报告相同问题?