首页 > 解决方案 > 在 Chrome 或 Edge 上运行时,网格上的 Javascript 函数计算不起作用,但在 IE11 上运行良好

问题描述

调试值图片
屏幕图片

*******为什么金额和总字段不能自动正确计算,它仍然是旧值,不会因计算而改变***

function Calculate(txtQty, txtPrice, txtAmount, txtTotal) {
    var txtQtyObj = document.getElementById(txtQty).value != "" ? document.getElementById(txtQty).value : "0";
    var txtPriceObj = document.getElementById(txtPrice).value != "" ? document.getElementById(txtPrice).value : "0";
    var txtAmountObj = document.getElementById(txtAmount).value != "" ? document.getElementById(txtAmount).value : "0";
    var txtTotalHideObj = document.getElementById(txtTotal).value != "" ? document.getElementById(txtTotal).value : "0";

    var amount = txtAmountObj.replace(/,/g, '')
    var Total = txtTotalHideObj.replace(/,/g, '')

    if (txtPrice.value != '') {
        txtAmountObj = parseFloat(txtQtyObj) * parseFloat(txtPriceObj);
    } else {
        txtAmountObj = ''
    }

    if (parseFloat(Total) > 0) {
        var txtTotal1 = parseFloat(Total) - parseFloat(amount) + parseFloat(txtAmountObj);

        document.getElementById(txtTotal).innerHTML  = formatCurrency(txtTotal1);

    }
    else {
        var txtTotal1 = parseFloat(Total) + parseFloat(txtAmountObj);

        document.getElementById(txtTotal).innerHTML  = formatCurrency(txtTotal1);

    }
    document.getElementById(txtAmount).innerText = formatCurrency(txtAmountObj);
     
}

**** 金额框 #1 ****

*** 金额框 #2 ***

*** 总箱 **

标签: javascriptasp.net

解决方案


推荐阅读