我在页面上有 5 个文本区域,我希望在第一个文本区域上按 Enter 键时发生特定事件,在其他文本区域上按 Enter 键时发生不同的事件。您能否建议如何实现这一目标?
<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
当在第一个文本区域按下回车键时,alert('Text Area 1 clicked');
当在其他 4 个文本区域按下 Enter 键时,alert ('Other Text Area's clicked');
可以用jquery实现吗?
http://jsfiddle.net/26kN7/1/ http://jsfiddle.net/26kN7/1/
$("textarea").keyup(function(e) {
var code = e.keyCode ? e.keyCode : e.which;
if (code == 13) { // Enter keycode
if($(this).hasClass("first")) {
alert("first ta clicked");
} else {
alert("the other ta clicked");
}
}
});
在某些版本的 FFX 中按下<Tab>
, e.which 未设置(仍为 0),但 e.keyCode 为 (9)。
你也可以将其缩短为
$("textarea").keyup(function(e){
if((e.keyCode || e.which) == 13) { //Enter keycode
if($(this).hasClass("first")) {
alert("first ta clicked");
} else {
alert("the other ta clicked");
}
}
});
另一件要注意的事情是,我喜欢在此处添加类,而不是查找第一个文本区域,因为这是更通用的解决方案,可以满足任何文本区域的需求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)