2011-11-19 28 views
9

Stack Overflowの質問のコメントリンクと同様の動作をさせようとしています。 クリックすると「コメントを追加」リンクを含むdivが非表示になり、新しいコメント用のフォームを含む別のdivが表示されます。coffeescriptでdivを表示して表示する方法 - Rails 3.1

coffeescriptでどうすればできますか?私は動作しません、以下しようとしています

jQuery -> 

    hide_comment_link =() -> 
    $('#add_comment_link').hide 
    hide_comment =() -> 
    $('#add_comment').hide 
    show_comment =() -> 
    $('#add_comment').show 

    $('#add_comment_link').click -> 
    hide_comment_link 
    show_comment 
    false 

ビューは次のとおりです。ルビーとは異なり

#add_comment_link 
    #{link_to "Add a comment"} 
#add_comment 
    Add a comment in this div. 

答えて

13

、CoffeeScriptのは、あなたが関数から括弧を省略することはできません/方法があればそこに呼び出し、引数はありません。あなたはそれらを追加する必要があります。

$('#add_comment_link').hide() 
hide_comment_link() 

doキーワードは別のオプションです:

do $('#add_comment_link').hide 
do hide_comment_link 
+1

多くのありがとう!私はそんなに不愉快な気がする。さて、これが他の開発者に役立つことを願っています... – obo

5

私はここでの問題は、括弧の不足であると信じて:

hide_comment_link =() -> 
    $('#add_comment_link').hide() 
hide_comment =() -> 
    $('#add_comment').hide() 
show_comment =() -> 
    $('#add_comment').show() 

$('#add_comment_link').click -> 
    hide_comment_link() 
    show_comment() 
    false 

編集:@ジェレミーは私にそれを打つ

+0

はいです。ありがとうございました。 – obo

関連する問題