0
ユーザーが何かを変更してすべての値を再計算するときに自分自身を更新するフォームがありますが、一部の値はPHPセッションから取得されるため、ページの読み込み時に更新し、 onchange()と同じようにload()でjQuery関数を実行する
$(document).ready(function() {
$('.qty').change(function() {
update_amounts();
});
update_amounts(); //<--- must to be executed on document.ready()
});
function update_amounts() {
var sum = 0.0;
$('#myTable > tbody > tr').each(function() {
var qty = $(this).find('option:selected').val();
var price = $(this).find('.price').val();
var amount = (qty*price)
sum+=amount;
$(this).find('.amount').text(''+amount);
});
//calculate the total to sum
$('.total').val(sum);
//calculate total + shipping and add VAT
var shipping = $('.shipping').val();
var total = $('.total').val();
var vat = $('.vat').val();
//calculate vat
var vat_value = ((total*vat)/100);
//calculate grand total
sub_total = (parseFloat(total)+parseFloat(shipping)).toFixed(2);
var grand_total = (parseFloat(sub_total)+parseFloat(vat_value)).toFixed(2);
$('.grandTotal').val(grand_total);
$('.modalTotal').val(grand_total);
}
しかし、私はいくつかの値を変更し、document.ready();
に誰かが理由を説明できないときは、このコードが実行されるだけ?どのように機能することができますupdate_amounts();
は負荷で起動することができますか?
正しいと思われます。何かエラーがありますか? – eisbehr
表示されているコードは、ドキュメントの準備時にupdate_amountsを実行する必要があります...コンソールエラーはありますか? –
いいえ...コンソールにエラーはありません。なぜ、解決策が見つからないのですか? – andreaem