如何在按下回车键时,获取文本框的值?

coding2live 2021-02-05 16:09:17 115

<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>

我想用js监听用户是否按下了回车键:

function search() {
    if(event.keyCode == 13) {
        alert("should get the innerHTML or text value here");
    }
}

现在这段代码运行起来没问题。

但我的问题是如何获取input里面的值,我的想法是给函数传递一个引用 “this”;

或者如果他们有id,那么我可以使用id,但我不知道如何区分哪个input是当前被输入的…

以下答案仅供参考

试试这个:

<input type="text" placeholder="some text" class="search" onkeydown="search(this)"/>  
<input type="text" placeholder="some text" class="search" onkeydown="search(this)"/>

JS代码:

function search(ele) {
    if(event.key === 'Enter') {
        alert(ele.value);        
    }
}

演示链接

译者注:

上面的写法或许已经过时了,在HTML5中应该这样改进一下:

  1. search(this) 替换为 search(event)
  2. event.key === 'Enter' 替换为 ele.keyCode === 13
  3. onkeydown 替换为 onkeypress