使用javascript处理在文本区域上输入密钥

Abi*_*hek 2 javascript jquery events textarea

我在页面上有5个文本区域,我希望在第一个文本区域上按Enter键时发生特定事件,而在其他文本区域的enter键上发生不同事件.能否请您就如何实现这一点提出建议.

<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
<TextArea></TextArea>
Run Code Online (Sandbox Code Playgroud)

当击中第一文本区域的输入时, alert('Text Area 1 clicked');

当击中另外4个文本区域的输入时, alert ('Other Text Area's clicked');

可以使用jquery实现这一点.

Baz*_*nga 7

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");
     }
   }
});
Run Code Online (Sandbox Code Playgroud)

在某些版本的FFX按下时<Tab>,e.未设置(保持为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");
      }
    }
});
Run Code Online (Sandbox Code Playgroud)

另一件事是我喜欢在这里添加类比找到第一个textarea是cos这是更通用的解决方案,可以迎合任何textareas.