javascript - 单击按钮时无法调用 View 功能主干

标签 javascript jquery backbone.js

我试图在单击按钮时调用 View 函数,我发现 this question并跟踪但仍然没有到达查看功能。

HTML:

<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");
   }
});

我在我的router中尝试了console.log,并且render()正在工作,除了在addToCart函数中.

如有任何帮助,我们将不胜感激。

最佳答案

例如,您需要先为该 View 分配 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')

关于javascript - 单击按钮时无法调用 View 功能主干,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19107833/

相关文章:

jquery - 页面加载时默认选择最后一个选项卡,jQuery Ui 选项卡

javascript - jQuery.Deferred 异常 : Cannot read property 'split' of null TypeError: Cannot read property 'split' of null

用于 Restful 后端的 Ember.js 或 Backbone.js

javascript - 我可以在 app.js 文件中使用 Handlebars 模板吗

javascript - 按下表格行时选中复选框

javascript - 从基于属性模式的对象中获取值?

javascript - 主干集合未使用 JSONP 请求更新

javascript - 将工具提示添加到流程图

javascript - 如何检查所有四个多选是否都选择了某个值?

django - 具有复杂查询的 REST API