私はこれを試しています:
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
enterキーが押されているかどうかを確認するJavaScriptを使用します。
function search() {
if(event.keyCode == 13) {
alert("should get the innerHTML or text value here);
}
}
これは今のところうまくいきますが、テキストフィールド内の値を取得する方法についての質問、関数に参照「this」を渡すことを考えていました。入力されたものを区別して、同じ問題に再び戻る方法を参照してください...
これを試して:
<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);
}
}
$("input").on("keydown",function search(e) {
if(e.keyCode == 13) {
alert($(this).val());
}
});
jsFiddleの例: http://jsfiddle.net/NH8K2/1/
イベントオブジェクトを使用するだけ
function search(e) {
e = e || window.event;
if(e.keyCode == 13) {
var elem = e.srcElement || e.target;
alert(elem.value);
}
}
JavascriptコードをHTMLに配置しないでください。これらの入力にクラス(「検索」)を与えるため、これを行う理由はありません。より良い解決策は、このようなことをすることです:
$( '.search' ).on( 'keydown', function ( evt ) {
if( evt.keyCode == 13 )
search( $( this ).val() );
} );
このようなもの(テストされていませんが、動作するはずです)
これをHtmlのパラメーターとして渡します。
<input type="text" placeholder="some text" class="search" onkeydown="search(this)"/>
そして、検索機能に渡されたパラメーターの値を警告します。
function search(e){
alert(e.value);
}