javascript
/は比較的新しくjQuery
、期待した結果が得られません。入力値が 1 つしかない場合でも合計を表示したい、それ以外の場合は 0 を表示したい。ただし、現時点では、合計を表示する前に 3 つの値すべてを入力する必要があります。入力に入力すると、次の入力が合計に単純に追加されるわけではありません。各入力の .length をクロス チェックし、各入力に基づいて合計を返す一連の長い条件ステートメントを想像できます。確かに、より簡単でクリーンな方法が必要です。これが Java の場合、total += (変数) を使用し、それらを合計します。ここではうまくいかないようです。
$('#invoice_labor, #invoice_materials, #invoice_other').keyup(function() {
if ($('#invoice_labor').length || $('#invoice_materials').length || $('#invoice_other').length ) {
updateTotal();
} else {
$('#invoice_total').html(0);
}
});
var updateTotal = function () {
var input1 = parseFloat($('#invoice_labor').val(), 2);
var input2 = parseFloat($('#invoice_materials').val(), 2);
var input3 = parseFloat($('#invoice_other').val(), 2);
var total = input1 + input2 + input3;
$('#invoice_total').html(total);
$("#invoice_total").html(parseFloat($("#invoice_total").html()).toFixed(2));
};
そして、これが私がいじっていたフィドルです。
そのため、数値を入力するフィールドに関係なく、合計を変更したいと考えています。1 つだけの場合は、それを合計変数に追加して返す合計。2 つの組み合わせの場合は、それらを組み合わせて合計に追加します。助けてくれてありがとう。