2016-03-16 119 views
0

我可以提供帶有Rails URL /路徑的AJAX嗎?我需要的是url: articles/1/comments/1。 由於我現在遇到困難,現在讓AJAX執行此URL,我不知道是否有方法使用Rails路由我熟悉[comment.article, comment]提供AJAX With Rails-生成的網址

注:

我加載使用AJAX一個DIV:

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

AJAX:

var loadComment = function() { 
    return $('.comment-content').each(function() { 
    var comment_id = $(this).data('comment-id'); 
    return $.ajax({ 
     url: "" , 
     type: 'GET', 
     dataType: 'script', 
    }); 
    }); 
}; 
+0

爲什麼不在鏈接中添加':remote => true'? – devanand

+0

鏈接將被'jquery_ujs'修改並自動成爲ajax請求。檢查您的路線和日誌以查看結果。 – devanand

+0

在你的控制器之上'respond_to:html,:js' – devanand

回答

0

Rails的形式提供數據的遠程屬性。它的工作原理就像AJAX和它使用的網址,你在形式加入

,你可以用它象下面這樣:

<%= form_for([comment.article, comment], remote: true) do |f| %> 
    ... 
<% end %> 
0

,你可以,如果你正在使用的form_for或者如果你使用像

<%= form_for([comment.article, comment], remote: true) do |f| %> 
    ... 
<% end %> 

想送阿賈克斯這樣的:

$.ajax({ 

}) 

那麼你可以使用

$.ajax({ 
url : "<%= url_for article_comment_path(article, comment)%>" 

}) 
+0

'<%= article_comment_path(article,comment)%>'不起作用,請參閱上面的註釋。 – Liroy