2017-11-02 5 views
1

こんにちは、ボタンの値をテキストボックスに追加していますが、ボタンをクリックするたびにテキストの値がリセットされません。以下テキストボックスにボタンの値を追加します

私のコードです:

$('#btn1, #btn2, #btn3, #btn4, #btn5').click(
function(){ 
    $('#input1').val($('#input1').val()+$(this).val()); 
    }); 
}); 

私は、ボタンのクリックごとに私のテキストボックスをリセットすることができますどのように、ボタンをクリックしていた場合、私はこの結果を得ます。ジャバスクリプトの

enter image description here

おかげ..

+3

あなたも、関連するHTMLを追加することはできますか? –

答えて

0

利用のparseInt()関数は、文字列ではJavaScriptののparseInt()関数の詳細を知るために

クリックhereを整数に変換します。

はコードの下に試してみてください。

$('#input1').val(parseInt($(this).val())); 

以前選択した値を追加したい場合は、コードの下に使用します。

$('#input1').val(parseInt($(this).val())+parseInt($('#input1').val())); 
+0

こんにちはこのコードで新しい入力を上書きしようとしています $( '#input1')。val(parseInt($(this)).val())); –

0

.val()を返す文字列。あなたは文字列と整数の合計を作ることはできません、あなたはparseInt関数を使用する必要があります。

$('#input1').val(parseInt($('#input1').val()) + parseInt($(this).val())); 

のparseIntの小さな例:

'1' + 2   // 12 
parseInt('1') + 2 // 3 

EDIT:

$('#input1').val($(this).val()); 
+0

ボタンをクリックするだけでテキストボックスに値を表示する必要があります。 – user2147423

+0

私は知っています...どこに問題がありますか?あなたは私のポストで意味するように 'parseInt'を探しています。 – panther

+0

私はこれを試しましたが、結果はNaN10を示しています。 – user2147423

1

あなたは、各クリック上の入力値をリセットしたい場合は、変更する必要があります:
$('#input1').val($('#input1').val()+$(this).val());

$('#input1').val($(this).val());
実際には、現在の値と次のクリックされた値を連結するためです。
私はあなたのhtmlがいかに正確かは分かっていませんが、あなたにはまだあなたがいない場合に必要な値を持つボタンにvalue属性を追加することをお勧めします。
は、この例をチェックしてください:

$('#btn1, #btn2, #btn3, #btn4, #btn5').click(function(){ 
 
    $('#input1').val($(this).val()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button id="btn1" value="10">10 $</button> 
 
<button id="btn2" value="20">20 $</button> 
 
<button id="btn3" value="30">30 $</button> 
 
<button id="btn4" value="50">50 $</button> 
 
<button id="btn5" value="100">100 $</button><br><br><br> 
 

 
Value donation: <input type="number" id="input1">

関連する問題