如果用戶在輸入文本元素中寫入或粘貼字符串,我試圖通過Backbone
將數據發送到服務器。如何處理帶骨幹的輸入文本「粘貼」事件
我覺得這樣的事情,但它不工作:
events:{
"click .close":"closeResults",
"keypress input":"fetchData",
"paste input":"fetchData"
},
fetchData:function (e) {
var $this = this;
window.setTimeout(function() {
if ($.trim(e.target.value).length >= 3) {
console.log(e.target.value);
$this.collection.fetch({data: {limit: 10, term:$.trim(e.target.value)}});
}
}, 0);
}
'input'位於'$ el'裏面嗎?因爲這是工作示例 – 2013-05-12 20:27:36
btw'$ this'不是一個合適的變量名,因爲它暗示它是一個jQuery對象。 'self'是一個更好的選擇。無論如何,你的代碼應該工作我不能看到沒有什麼不對 – 2013-05-12 22:10:43
與此代碼'按鍵'事件的作品,但'粘貼'沒有,我也嘗試了不同的'$ this'這個名字,這是一個局部變量,這應該這個地方不會造成問題。 – vitto 2013-05-12 22:45:05