我正在尝试这个:
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
使用一些javascript来检查是否按下了回车键:
function search() {
if(event.keyCode == 13) {
alert("should get the innerHTML or text value here);
}
}
目前此工作正常,但我的问题是如何在文本字段中获取值,我想将一个引用“this”传递给函数,或者如果它们有id,那么我可以使用ID但是然后我看不出我如何区分输入哪一个,再次回到同一个问题......
答案 0 :(得分:39)
试试这个:
<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);
}
}
<强> DEMO Link 强>
答案 1 :(得分:8)
$("input").on("keydown",function search(e) {
if(e.keyCode == 13) {
alert($(this).val());
}
});
jsFiddle示例:http://jsfiddle.net/NH8K2/1/
答案 2 :(得分:5)
只使用事件对象
function search(e) {
e = e || window.event;
if(e.keyCode == 13) {
var elem = e.srcElement || e.target;
alert(elem.value);
}
}
答案 3 :(得分:2)
收听change
事件。
document.querySelector("input")
.addEventListener('change', (e) => {
console.log(e.currentTarget.value);
});
答案 4 :(得分:1)
你不应该在你的HTML中放置Javascript代码,因为你给这些输入一个类(“搜索”),没有理由这样做。更好的解决方案是做这样的事情:
$( '.search' ).on( 'keydown', function ( evt ) {
if( evt.keyCode == 13 )
search( $( this ).val() );
} );
答案 5 :(得分:0)
这样的事情(未经测试,但应该有效)
将此作为参数传递给Html:
<input type="text" placeholder="some text" class="search" onkeydown="search(this)"/>
并提醒传递给搜索功能的参数值:
function search(e){
alert(e.value);
}