2016-12-12 11 views
0

私のWebページには、私のページに動的に追加されたdiv要素があります。Rails 5とCoffeescript:On Clickイベント非トリガー

このdivには、クリックするとajaxを使用してサーバーからデータをプルダウンするリンクがあります。

<div class="main-div"> 
    <a href="#" class="pull-data"><b>Click Here</b></a> 
</div> 

私はページ上のjQueryでクリックでイベントがある場合は、それが正常に動作します:

$("a.pull-data").on("click", function(e) { 
    console.log("Clicked!"); 
} 

しかし、私はCoffeeScriptのために、これを変換しようとすると、そのように、何がトリガーなかっます:

jQuery -> 
    $("a.pull-data").on "click", -> 
    console.log "Clicked?" 

私のcoffeescriptには何かがありますか?私のcoffeescriptを修正して、動的に追加された要素のクリックをキャプチャする方法を教えてください。

答えて

0

あなたの2つのコード例は等価ではありません。

$("a.pull-data") // create a jquery object matching the CSS selector 
    .on("click", function(e) { // add a click handler that 
    console.log("Clicked!"); // logs "Clicked!" to the console 
    }); 

、ここでは、あなたのCoffeeScriptのtranspiledバージョンです:あなたが望むすべてのものをして匿名関数を作成している

jQuery(function() { // pass anon fn to jQuery constructor 
    return $("a.pull-data").on("click", function() { // returning a fn that 
    return console.log("Clicked?"); // attaches the click handler 
    }); 
}); 

とそれをjQueryコンストラクタに渡します。つまり、実際には決して呼び出されないため、何もしません。

常に、常に、問題がある時はいつでもあなたの出力はJavaScriptで常に表情。 coffeescript.orgでインタラクティブコンパイラを使用して、出力を監視しながら機能を構築することもできます。