无法在单击按钮时调用视图函数主干

Cannot call view function backbone on click a button

本文关键字:视图 函数 调用 单击 按钮      更新时间:2023-09-26

我试图在单击按钮时调用视图函数,我发现了这个问题并遵循但仍然没有达到视图函数。

目录:

<form class="addToCart-form">
    <input type="button" id="addToCart" class="addToCart" value="Add To Cart" />
</form>

视图:

var CartView = Backbone.View.extend({
   events : {
       "click : #addToCart" : "addToCart"
   },
   addToCart : function (){
        console.log('saved');
        return false;
   },
   render: function(){
      $("#list").html("string");
       $("#rightpanel").html("another string");
   }
});

我尝试了console.log在我的routerrender()工作正常,除了addToCart功能。

任何帮助将不胜感激。

例如,

您需要先为此视图分配 el 值

 var CartView = Backbone.View.extend({
   el: '.addToCart-form', 
   events : {
       "click : #addToCart" : "addToCart"
   },
   addToCart : function (){
        console.log('saved');
        return false;
   },
   render: function(){
      $("#list").html("string");
       $("#rightpanel").html("another string");
   }
});

之后,您可以像在元素 id 的基础上一样添加事件处理程序(更好的方法是用户元素类来附加事件)。然后,您将能够访问您的表单元素,例如

this.$el.find('#addToCart')