2011-11-19 49 views
9

我想做一個類似的行爲作爲堆棧溢出問題上的評論鏈接。 點擊應隱藏包含「添加評論」鏈接的div,並顯示包含新評論表單的另一個div。如何隱藏和顯示與coffeescript股利 - 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 

編輯:@Jeremy打我吧

+0

是的。謝謝。 – obo