2012-02-29 9 views
1

JSファイルで表示/非表示するコメントシステムを作成しましたが、同時にこのコメントシステムはビューカウンタとして使用される同じボタンによって制御されます。どちらも2つの異なるAjaxファイルによって実行されますが、どちらも動作しないと動作しません。どんな助けでも大歓迎です!ありがとうございました! HTMLは@micropostを使用してmicropostを使用していないRails:2つの異なるAjax機能が同じボタンで連携していない

EDIT @micropostは異なる部分的に定義されているため。 Michael Hartl's Railsチュートリアルに精通している人たちのために、私は彼のコードと教えを使ってこのマイクロポストを行ってきました。私は、これはmicropostではなく@micropostを戻すされてAJAXのためにすべてを台無しにされて知っているが、それは私が私が失っていAJAXファイルに@を入れないようにしましょうではないだろう

コメントボタンのHTML

$("#count-<%[email protected]%>").html('<%="#{@micropost.view_count}"%>'); 
$(".count-<%[email protected]%>").html('<a href="/microposts/<%[email protected]%>/upview" data-remote="true" class="CommentTitle" data-micropost="<%= @micropost.id %>">Comments</a>'); 

コメントButtoカウンタを変更するための

<span class='count-<%= micropost.id%>'> <a href="/microposts/<%=micropost.id %>/upview" data-remote='true' class='CommentTitle' data-micropost='<%= micropost.id %>'>Comments</a> </span> 

コメントのAjaxユーザーがHTMLでリンクをクリックすると、彼らはあなたのMicropostsController中にあなたupviewアクションにリクエストを送っている:nはトグルJS

$(".CommentTitle").click(function(){ 
var title = this; 
var postID = $(this).data('micropost'); 
$("#CommentContainer-" + postID).slideToggle("slow", function(){ 
$(".CommentTitle", title).html($(this).is(":hidden") ? "Comments" : "Comments"); 
}); 
}); 

答えて

1

仮定をスライドさせます。

そのコントローラのアクションメソッド内では、インスタンス変数を割り当てることができますが...

@this_micropost = Micropost.find(params[:id]) # assuming you're RESTful, which it looks like 

そして、あなたのupview.js.erbの内側に、あなたが好きなため、そのインスタンス変数を使用することができます。

希望すると便利です。

関連する問題