Неверное значение в текстовом поле

0

Я начинаю использовать javaScript в HTML, я пытаюсь создать умножение между двумя значениями, введенными пользователем, и отобразить результат в другом текстовом поле, но результат, который отображается неправильно.

Есть три текстовых поля, первый ящик, который я положил 2, а второй 7, в третьем текстовом поле он должен отображать результат 14, но он показывает, что результат равен 98.

Может ли кто-нибудь помочь мне?

Мой HTML-код выглядит следующим образом:

<tr style="background:#fafafa;">
  <td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><textarea name="exp_desc" id="exp_desc" rows="3" cols="35"></textarea></td>
  <td style="border:1px solid #ccc; border-width:1px 1px 0 0; color: #D6D6D6;"><input class ="txt" type="text" name="txt"></td>
  <td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input class ="txt" type="text" name="txt"></td>
  <td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input span id='sum'  class ="txt" type="text" name="txt"></span></td>
  <td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input type="file" name="datafile[]" size="40"></td>
</tr>

и javaScript:

$(document).ready(function(){
    $(".txt").each(function() {
        $(this).keyup(function(){
            calculateSum();
        });
    });
});

function calculateSum() {
    var sum = 1;
    $(".txt").each(function() {
        if(!isNaN(this.value) && this.value.length!=0) {
            sum *= parseFloat(this.value);
        } 
    });

    // enter code here 

    $("#sum").val(sum.toFixed(2));

}
Теги:

1 ответ

0

Изменен ваш javascript для:

<script>
 var num1=0;
 var num2=0;
$(document).ready(function(){
$("#txt1,#txt2").on("keyup",function(){
  num1  =   $("#txt1").val();
  num2  =   $("#txt2").val();
    if(!isNaN(this.value) && this.value.length!=0) {
        num1 *= parseFloat(num2);
        $("#sum").val(num1.toFixed(2));
    }
});
}); 
</script>

Html:

<tr style="background:#fafafa;">
<td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><textarea name="exp_desc" id="exp_desc" rows="3" cols="35"></textarea></td>
<td style="border: 1px solid #ccc; border-width: 1px 1px 0 0; color: #D6D6D6;"><input class ="txt" type="text" name="txt" id="txt1"></td>
<td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input class ="txt" type="text" name="txt" id="txt2"></td>
<td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input  id='sum'  class ="txt" type="text" name="txt"></td>
<td style="border:1px solid #ccc; border-width:1px 1px 0 0;"><input type="file" name="datafile[]" size="40"></td>
</tr>
  • 0
    Большое спасибо, теперь это работа для меня.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню