3

当有人在输入文本上完成添加/编辑数据并在 Backbone 中按 Enter 或 Tab 键时,有没有一种方法可以执行我的方法?

4

2 回答 2

8

以下是如何在文本字段中点击返回时实现事件的示例:

var SearchView = Marionette.ItemView.extend({
    template: "#template",
    events: {
      'keypress #search-input' : 'searchKeywords',
    },
    searchKeywords: function(e){
      if ( e.which === 13 ) { 
        var keywords = $(e.target).val();

        if(keywords === '') return;

        this.model.set({keywords: keywords});
      }
    }
});    

event.which 属性规范了 event.keyCode 和 event.charCode。

http://api.jquery.com/event.which/

于 2013-05-22T22:29:48.703 回答
2

您可以收听keyup,keypress事件并将keyCode事件的属性与13. 当用户通过按 Tab 键导航表单字段时,事件是focus,focusinfocusout

应该像往常一样使用events字典创建与这些事件的绑定。

Backbone 使用与 jQuery 相同的事件,请参阅表单事件了解更多信息。

于 2013-05-22T21:48:32.060 回答