2016-07-12 5 views
-1

バーコードを複数回入力するバーコード入力があります。バーコードを追加するたびに、空の値でEnterキーを押してもバーコードが追加されます。キーコード&&入力が空でない場合何か

ユーザがkey == 13を入力し、値が空でない場合にのみ、機能を開始したいと考えています。

これはコードです:

if(key == 13) {} 

私が試みたが成功せず:

var value = $("#barcode").val(); 
if(key == 13 && value.length > 0) 
{alert("This works!")}... 
+1

「キー」を宣言してどこで定義しますか? 「成功なし」とはどういう意味ですか?エラーメッセージはありますか?それは何とか値の長さを無視していますか? – Xufox

+0

jQueryを使用してキーボードのEnterキーを押す方法を検出するには? :http://stackoverflow.com/questions/979662/how-to-detect-pressing-enter-on-keyboard-using-jquery –

答えて

3

あなたはどちらかkeyupまたはkeypressイベントの下で、あなたのコードを実行する必要があります。 jQueryを使用してイベントを添付すると仮定すると、提供されたイベントオブジェクトのwhichプロパティを使用してキーコードを取得する必要があります。あなたはこれを試すことができ

$('#barcode').keypress(function(e) { 
    if (e.which == 13 && this.value) { 
     alert("This works!") 
    } 
}) 

Working example

1
$('#barcode').keypress(function(event){ 
    var keycode = (event.keyCode ? event.keyCode : event.which); 
    if(keycode == '13' && this.value.length > 0){ 
     alert('This Works!'); 
    } 
}); 

よりよい:これを試してみてください。キーコード13は、入力フィールドが空でない場合には入力キー& &である。これは私がこの行で言いました。

keycode == '13' && this.value.length > 0 
+1

あなたの答えを説明してください*あなたの答えはOPが学ぶようになります。 –

+0

申し訳ありませんが、これはとても単純なものだと思いました。私はそれを説明しなかったので。 – htoniv

関連する問題