Общая стоимость и количество в Javascripts - PullRequest
1 голос
/ 18 марта 2019

Привет, ребята, я пытаюсь узнать общую цену и количество каждого товара. Итак, у меня есть фиксированная цена 20 долларов. цена получается хорошей, но не считая количества каждого товара ...

HTML код

HTML-Continous

Это код для общего количества, и он отлично работает в поле ввода.

function changeval() {
    $total = parseInt($("#A1").val()) + parseInt($("#B1").val()) + parseInt($("#C1").val()) + parseInt($("#D1").val()) + parseInt($("#E1").val());

    $('.A').val($("#A1").val());
    $('.B').val($("#B1").val());
    $('.C').val($("#C1").val());
    $('.D').val($("#D1").val());
    $('.E').val($("#E1").val());
    $('.total').val($total);
}

ЗДЕСЬ ПРОБЛЕМА когда я добавляю этот код, цена получается хорошей, но количество больше НЕ ПОКАЗЫВАЕТ.

function changeval() {
    $price = parseInt($("#A1").val() * 20) + parseInt($("#B1").val() * 20) + parseInt($("#C1").val() * 20) + parseInt($("#D1").val()* 20) + parseInt($("#E1").val()* 20);

    $('.A').val($("#A1").val());
    $('.B').val($("#B1").val());
    $('.C').val($("#C1").val());
    $('.D').val($("#D1").val());
    $('.E').val($("#E1").val());
    $('.price').val($price);
}

так что я хочу что-то вроде этого

ЦЕНА = 20 КОЛИЧЕСТВО = 1 ЦЕНА = 40 КОЛИЧЕСТВО = 2 «» «» так как у меня есть 20 как фиксированная цена. Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 18 марта 2019

Если вы хотите получить как TotalQuantity, так и TotalPrice, вы должны сначала рассчитать TotalQuantity, а затем вычислить TotalPrice = TotalQuantity * 20 (поскольку у вас фиксированная цена для всех элементов).

$(document).ready(function() {
  // Handle onchange event for input number
  $('.qty').on('input', function() {

    $qty_total = 0;
    // Calculate total qty
    $(".qty").each(function() {
      $qty_total += parseInt($(this).val());
    });

    // Update to Qty input
    $("#qty_total").val($qty_total);

    // Update to Price input
    $("#price_total").val($qty_total * 20);
  })
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <table>
    <tr>
      <td>Item A</td>
      <td><input value=1 type="number" id="qty1" class="qty"></td>
    </tr>
    <tr>
      <td>Item B</td>
      <td><input value=2 type="number" id="qty2" class="qty"></td>
    </tr>
    <tr>
      <td>Item C</td>
      <td><input value=3 type="number" id="qty3" class="qty"></td>
    </tr>
    <tr>
      <td>Item D</td>
      <td><input value=4 type="number" id="qty4" class="qty"></td>
    </tr>
    <tr>
      <td>Item E</td>
      <td><input value=5 type="number" id="qty5" class="qty"></td>
    </tr>
    <tr>
      <td>Total Qty</td>
      <td><input id="qty_total"></td>
    </tr>
    <tr>
      <td>Total Price</td>
      <td><input id="price_total"></td>
    </tr>
  </table>
</div>
0 голосов
/ 18 марта 2019

Причина в том, что вы используете одно и то же имя функции для всех функций onchange .т. е. для обновления цены и итога вы используете одну и ту же функцию changeval1 () .

Попробуйте изменить название функции.Обе функции имеют одинаковое имя.Одна функция обновляет всего , а другая обновляет цена .Поэтому, когда обе функции имеют одинаковые имена, обновляются как цена, так и сумма.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...