Backbone.js中的Textarea事件

时间:2013-04-15 09:16:26

标签: javascript jquery backbone.js

在我的应用程序中,然后是一些带有“contentBlock”类的textarea。

我正在使用骨干视图中的以下代码:

 'change textarea': 'updateText'       

但是updateText函数没有被触发。

我想在textarea中更改任何文本时触发事件。

2 个答案:

答案 0 :(得分:4)

您应该使用 keyup 事件(或其他一些关键事件)来侦听文本区域中的文本更改。使用 Loamhoof的示例:

var View = Backbone.View.extend({
    events: {
        'keyup textarea': 'test'
    },
    test: function() {
        alert();   
    }
});

new View({el: 'div'});

答案 1 :(得分:0)

所以......遗憾的是,由于我们提供任何答案的元素太少,我只是简单地为您提供一个简单的例子:

var View = Backbone.View.extend({
  events: {
    'change textarea': 'test'
  },
  test: function() {
    alert();   
  }
});

new View({el: 'div'});

http://jsfiddle.net/ZSgvy/

因此,基于常见错误:确保您的事件受限于您的视图元素(如果您指定了一个不存在的元素,或者您之后以错误的方式更改它,它们将不会),并确保您的textarea实际上是视图元素的后代。另外,你这样做的方式,textarea必须不是视图元素本身。