2010-12-19 140 views
0

因此,這可能很容易,但我無法實現。 我有3個文字輸入filter類。我想要的是綁定一個功能search()onkeypress事件。我知道我可以手動將它寫入像這樣的每個輸入onclick="search()",但我不想使用內聯的東西,只是原型功能。 我當前的代碼是:將事件監聽器附加到給定類的元素中

<input type="text" class="filter" id="id"/> 
<input type="text" class="filter" id="title"/> 
<input type="text" class="filter" id="quant"/> 

Event.observe('.filter', 'keypress', function(){ // <<< this don't work :(
    alert('yey!'); 
}); 
+1

你說你*不*希望'prototypejs'的方法呢?這是不是意味着什麼?換句話說,你想要一個完整的非庫解決方案? – user113716 2010-12-19 16:32:56

+0

對不起。錯字。我不想使用內聯'onclick =「search()」'。 10X。 – s3v3n 2010-12-19 16:36:18

+0

我重新發布了我的答案。我會給出一個使用命名函數的更新。 – user113716 2010-12-19 16:38:46

回答

4

我不是太熟悉prototypejs,但我相信你可以這樣做:

例子:http://jsfiddle.net/patrick_dw/yAj3A/

$$('.filter').invoke('observe','keypress', function(){ 
    alert('yey!'); 
}); 

編輯:或者如果你想使用命名函數,你也可以這樣做。

例子:http://jsfiddle.net/patrick_dw/yAj3A/1/

function search(){ 
    alert('yey!'); 
} 

$$('.filter').invoke('observe','keypress', search); 
+0

它做到了!謝謝! – s3v3n 2010-12-19 16:43:32

+0

@ s3v3n:不客氣。 – user113716 2010-12-19 16:44:23

相關問題