Подтвердить что ты не робот

Получить значение входного текста при нажатии клавиши

Я пытаюсь это сделать:

<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, но тогда я не вижу, как я мог бы различать, какой из них был введен, снова возвращая мою спину к той же проблеме...

4b9b3361

Ответ 1

Попробуйте следующее:

<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

Ответ 2

$("input").on("keydown",function search(e) {
    if(e.keyCode == 13) {
        alert($(this).val());
    }
});

Пример jsFiddle: http://jsfiddle.net/NH8K2/1/

Ответ 3

Просто используя объект события

function search(e) {
    e = e || window.event;
    if(e.keyCode == 13) {
        var elem = e.srcElement || e.target;
        alert(elem.value);
    }
}

Ответ 4

Что-то вроде этого (не проверено, но должно работать)

Передайте это как параметр в Html:

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

И сообщите значение параметра, переданного в функцию поиска:

function search(e){
  alert(e.value);
}

Ответ 5

Вы не должны размещать Javascript-код в своем HTML-коде, так как вы вводите этот ввод классу ( "поиск" ), для этого нет оснований. Лучшим решением было бы сделать что-то вроде этого:

$( '.search' ).on( 'keydown', function ( evt ) {
    if( evt.keyCode == 13 )
        search( $( this ).val() ); 
} );