2012-05-11 10 views
0

私はちょうどbackbone.jsで遊んで始めて、それを使用するという癖を楽しんでいます。 しかし、作業中のサイトのビューでイベントを処理するためにそれを使用しようとしています。 アムもHERESにHTML、サイトbackbone.jsイベントの処理を表示

<html> 
<head> 
    <title>Shopping List</title> 
    <script type="text/javascript" src="jquery-1.7.2.min.js"></script> 
    <script type="text/javascript" src="underscore.js"></script> 
    <script type="text/javascript" src="backbone.js"></script> 
    <script type="text/javascript" src="app.js"></script> 
    <script type="text/javascript"> 
    App.Views.Sidebar; 
    </script> 
</head> 

<body> 

<div id="app-wrapper"> 

    <div id="app-header"> 
     <ul> 
      <li id="rf">Test</li> 
     </ul> 
    </div> 

</div> 

</body> 
</html> 

のそのわずか骨格がしかし、このスニペットが動作していないように私のコード

var App = App || {}; 
    App.Views = App.Views || {}; 
    App.Views.Sidebar = Backbone.View.extend({ 
       el: '#app-wrapper', 

       events : { 
        "click #rf":"test" 
    ;   }, 

       test: function(e) { 
        alert("testing"); 
       } 
      }) 
     } 
    }); 

を整理するために名前空間を使用して、テスト()メソッドがあります#rf要素をクリックしても呼び出されません。 間違ったことをしていますが、これはかなり新しいです。

+0

はどのようにあなたがあなたのビューをレンダリングしない、より多くのコンテキストを必要とし、どのようなあなたのHTMLは次のように見えるん。 –

答えて

4

ビューをインスタンス化していません。文書がロードされた後、あなたの意見をインスタンス化することを忘れないでください。また

var myView = new App.Views.Sidebar(); 

App.Views.Sidebar;の代わりに:)このような何かを試してみてください。このような何か(あなたはjQueryのを使用している場合):

$(function() { 

    // Initialize Backbone views. 
    var myView = new App.Views.Sidebar(); 

});