我想通過keydown驗證用戶輸入。爲此,我需要一個keydown事件。 不幸的是我只發現自定義模型事件:Backbone查看自定義事件
initalize: function(){
this.model = new ModelClass();
this.model.bind("keydown", this.validate, this);
}
這種做法肯定是罰款模型事件,但我不相信這是視圖,用戶界面相關的東西以正確的方式...
爲了讓您更好的解釋,這就是我想用我的事件:
var SomeView;
SomeView = Backbone.View.extend({
events: {
"keydown input#some-field": "validate" // custom event
, "change input#some-field": "doSomethingElse" // predefined backbone event
},
validate: function(attr){
// validation
}
});
那麼,什麼是創建自定義的骨幹事件,在視圖中調用的方法嗎?
嗨,我仍然不明白如果Backbone可以觸發一個keydown事件,如果它沒有定義? – 2012-07-11 15:58:12
@ dev.pus檢查我的更新答案:因爲backbone的事件是jquery的委託(http://api.jquery.com/delegate/),所以jQuery的代表支持事件,主幹是可用的。 – 2012-07-11 16:16:54
現在我明白了,第一個單詞是jQuery eventname,第二個單詞是選擇器。 eventname可以是以下任何一種:http://api.jquery.com/category/events/。所以keydown實際上會一直工作,我應該在發佈之前嘗試過代碼...... :) – 2012-07-11 18:07:42