Как умножить значение и получить результат. Я пробовал код ниже, который я прикрепил. когда я складываю два числа, он работает нормально. но когда я умножаю два значения, возникают проблемы. Вот как я складываю значения
sum += Number($(this).val());
вместо + я поставил как * эти символы
sum *= Number($(this).val());
Результат не отображается без ошибок. Я приложил код ниже, пожалуйста, посмотрите код и дайте мне хороший ответ, спасибо.
Это Форма
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Price</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control price" id = "price" name = "price" placeholder = "price" required>
</div>
</div>
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Qty</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control price" id = "qty" name = "qty" placeholder = "qty" required>
</div>
</div>
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Total Cost</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control" id = "total_cost" name = "total_cost" placeholder = "Total Cost" required>
</div>
</div>
Это jQuery
function total()
{
// we used jQuery 'keyup' to trigger the computation as the user type
$('.price').keyup(function () {
// initialize the sum (total price) to zero
var sum = 0;
// we use jQuery each() to loop through all the textbox with 'price' class
// and compute the sum for each loop
$('.price').each(function() {
sum += Number($(this).val());
});
// set the computed value to 'totalPrice' textbox
$('#total_cost').val(sum);
});
}



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вам необходимо инициализировать sum =1, потому что sum = 0 всегда будет давать 0 при умножении.
Ну действуй:-
var sum = 1;
sum = sum * Number($(this).val());
Или же
var sum = 1;
sum *= Number($(this).val());
Рабочий фрагмент: -
$(document).ready(function(){
$('.price').keyup(function(){
var sum = 1;
$('.price').each(function() {
if ($(this).val()){
sum *= Number($(this).val());
}
});
$('#total_cost').val(sum);
});
});<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Price</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control price" id = "price" name = "price" placeholder = "price" required>
</div>
</div>
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Qty</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control price" id = "qty" name = "qty" placeholder = "qty" required>
</div>
</div>
<div class = "form-group">
<label for = "" class = "col-sm-2 control-label">Total Cost</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control" id = "total_cost" name = "total_cost" placeholder = "Total Cost" required>
</div>
</div>Спасибо за хороший ответ, сэр. сейчас работаю. кол-во как установить как 1 в текстовом поле
Что ж, если вы умножите 0 на что угодно, вы получите 0. Вместо этого установите
sumв 1, если вы хотите найти произведение всех