2012-04-29 19 views
3

私はclassNameを宣言しているBackboneビューを持っています。私はそのクラスにクリックイベントをバインドしようとしています。だからこのようなもの:バックボーンクリックイベントが発射されない

className: "question" 
events: 
    "click .question": -> console.log("clicked") 

これは動作していないようです。これは、要素がビュー自体の内部にないためです。したがって、テンプレート内に要素を作成すると、その要素にバインドできます。ビュー自体にバインドできるはずですか?どんな助けもありがとうございます。ありがとう! fine manualから

答えて

7

delegateEventsdelegateEvents([events])

[...]イベントがフォーマット{"event selector": "callback"}で書かれています。 callbackは、ビュー上のメソッドの名前でも、直接関数本体でもかまいません。 selectorを省略すると、イベントはビューのルート要素(this.el)にバインドされます。

つまり、あなたのeventsは次のようになりたい:

events: 
    'click': -> console.log('clicked') 

デモ:http://jsfiddle.net/6W6QE/

+0

ふみます。うわー。その部分を見逃している必要があります。ありがとうございました! – shanemcd

関連する問題