4
数値(1つのテキストフィールドから取得)の割合を計算し、計算された値を別のフォームフィールドに設定しようとしています。このために私は以下のコードを試しましたが、jsが検出しているキーイベント/小数点の不一致を観察しています。パーセント計算エラー
たとえば、最初の入力フィールドに100を入力すると(1.75のパーセンテージを計算するために)、私のjsコードに基づいて1.75が予想されますが、2番目のテキストフィールドでは0.175になります。 私はこれを非常に簡単な計算で知っていますが、私はこれを解決することができません。
var reFee = document.getElementById("Estimated Referral Fee");
var LnAmt = document.getElementById("Loan Amount");
reFee.disabled = true;
LnAmt.onkeydown =
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
calcPer(LnAmt.value);
}
function calcPer(amtval) {
var pernum = 1.75;
reFee.value = (pernum/100) * amtval;
}
<div class="form-group">
<label class="control-label col-sm-2">Loan Amount</label>
<div class="col-sm-10">
<input id="Loan Amount" placeholder="Provide Loan Amount" data-toggle="tooltip" data-original-title="Provide Loan Amount" required="required" class="form-control" name="Loan Amount" type="text" value="">
<span class="help-block"></span>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">Estimated Referral Fee</label>
<div class="col-sm-10">
<input id="Estimated Referral Fee" placeholder="Your referral fee" data-toggle="tooltip" data-original-title="Your referral fee" required="required" class="form-control" name="Estimated Referral Fee" type="text" value="" disabled="">
<span class="help-block"></span>
</div>
</div>
キーを押す前に、あなたは '秒を押すとので、あなたに価値を与える、onkeydown''使用しているためです0 '最初の文字「10」を受け取っています。 'onkeyup'や' oninput'で試してみてください。そうすれば動作するはずです。 –
@squint:はい 'onkeyup'は私のために働いた:) thanks – krishna89
よろしくお願いします。 –