#javascript #jquery #html
#javascript #jquery #HTML
Вопрос:
Я пытаюсь получить значение текстового поля ввода и умножить его на количество и отобразить в столбце total.
Вот jsfiddle
HTML
Price: <input id="price" type="text"/>
<table id="my-table">
<tr>
<td>Quantity</td>
<td>Total</td>
</tr>
<tr>
<td class="quantity">15,447.84</td>
<td class="total"></td>
</tr>
<tr>
<td class="quantity">89.28</td>
<td class="total"></td>
</tr>
</table>
Скрипт
$(document).ready(function () {
$('#price').on('change', calTotal);
function calTotal() {
var p = $('#price').val();
var q = $('.quantity').text();
alert(q);
}
});
var q = $('.quantity').text();
дайте мне вывод как 15,447.8489.28
.
Как я могу умножить каждое quantity
значение на цену и распечатать в общем столбце?
Ответ №1:
-
Используйте
parseFloat()
и.text()
для установки значений. -
Кроме того, у вас есть два столбца для total и quantity каждый, вам нужно проверить значения обоих соответствующих столбцов при назначении текста в
total
-
Вам нужно преобразовать
15,000
в15000
, используйтеreplace()
для этого.
$('.total').text(function(){
var q = $(this).prev().text();
q = q.replace(/,/g, '');
p = p.replace(/,/g, '');
return (parseFloat(p)*parseFloat(q))
});
Комментарии:
1. Большое вам спасибо :). У меня небольшая проблема. как я могу добавить тысячу разделителей к сумме и ограничить двумя десятичными знаками? Проверьте это. jsfiddle.net/W7P4S/8 введите 10 для получения цены и посмотрите. это показывает
91.19999999999999
. мне нужно показать его как91.19
и154478.4
как154,478.4
.