2010-12-19 95 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

相关问题