I have a form, in which I accept 3 inputs, among these 3, 2 are accepting values from database, 1 accepts value from user. Upon users input, a sub total is calculated for by addition of 3 values, and over that sub total, a tax is calculated. Now the problem is, the subtotal is calculated correctly, but the tax is calculated only on the first two inputs, the 3rd one is ignored.
Here is the code I tried to calculate all 3 :
function calcGST() {
var hsncode = $("input[name='hsncode[]']").map(function() {
return $(this).val();
}).get();
console.log("HSNCode " + hsncode);
var hsnper = $("input[name='hsnper[]']").map(function() {
return $(this).val();
}).get();
console.log("HSNPer " + hsnper);
var hsnamt = $("input[name='amt[]']").map(function() {
return $(this).val();
}).get();
console.log("HSNAmt " + hsnamt);
functionToSetAllGstValue(hsnamt, hsncode, hsnper)
//alert("Called");
document.getElementById("gtotal1").value = 0.0;
var cgst_per = document.getElementById("cgst").value; //Central Tax Percent
var sgst_per = document.getElementById("sgst").value; //State Tax Percent
var subtot = document.getElementById("subtot").value; //Sub Total
var sgst_amt = ((sgst_per / 100) * subtot);
document.getElementById("sgstamt").value = sgst_amt.toFixed(2);
var cgst_amt = ((cgst_per / 100) * subtot);
document.getElementById("cgstamt").value = cgst_amt.toFixed(2);
var gtotal = Number(subtot) + Number(cgst_amt) + Number(sgst_amt);
//var ramt=gtotal-($subtotal+taxamt+cgst+sgst);
gtotal = Math.round(gtotal);
//alert("gtotal "+gtotal);
document.getElementById("gtotal1").value = gtotal.toFixed(2);
var ramt = gtotal - (Number(subtot) + Number(cgst_amt) + Number(sgst_amt));
document.getElementById("ramt").value = ramt.toFixed(2);
//alert(ramt.toFixed(2));
}
Please guide me.