2015-12-16 8 views
0

Редактировать: это не вопрос математики или операторов (я не думаю). Это вопрос форматирования или маскировки.Javascript - десятичный формат

Создание формы заказа. У меня есть Javascript, который подсчитывает/суммирует каждый столбец и отображает стоимость количества и столбца в двух других полях. Я хотел бы, чтобы стоимость столбца была отформатирована с десятичной и двумя значениями после него, но не может показаться, что это понятно. .toFixed (2), похоже, не работает (потому что это строка?), и мне интересно, если это потому, что поля количества и стоимости доступны только для чтения?

Я застрял.

//example of tallying one column 

    <input type="number" min="0" value="0" name="proA#x#" class="input-mini proA qty1 coffee total"> 

    $(document).on("change", ".qty1", function() { 
     var sum = 0; 
     $(".qty1").each(function(){ 
      sum += +$(this).val(); 
     }); 
     $(".total1").val(sum); 
     $(".cost1").val(sum*9.00); 
    }); 


    //item tally 

    <input type="number" id="D1" name="D1" class="input-mini uneditable-input total1" placeholder="0" readonly> 


    //item cost 

    <input type="number" id="" name="" class="input-mini uneditable-input cost1" placeholder="x 9.00" readonly > 

Заранее благодарен!

+0

Я не знаю, почему это было помечено как дубликат @Barmar. Я посмотрел на эту другую тему - похоже, не имеет никакого отношения к тому, что я прошу. Помогите мне понять. –

+0

Я не заметил '+' перед '$ (this) .val();', я думал, что вы объединяете значения вместо их добавления. – Barmar

+2

Но теперь я не понимаю, почему '$ (". Cost1 "). Val ((sum * 9) .toFixed (2))' не работает для вас. – Barmar

ответ

1

Я хотел бы сделать это таким образом

var sum = 0.00; 
$(".qty1").each(function(){ 
    sum += parseFloat($(this).val()); 
}); 

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

 Смежные вопросы

  • Нет связанных вопросов^_^