Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery/Javascript问题_Javascript_Jquery - Fatal编程技术网

Jquery/Javascript问题

Jquery/Javascript问题,javascript,jquery,Javascript,Jquery,我不熟悉query/javascript,下面的代码在计算总值和税额时遇到了问题 用户输入的净金额。用户将输入双倍金额,总金额和增值税金额也定义为双倍金额。 有人能帮忙吗?当我尝试运行以下代码时,我得到一个错误:uncaughtsyntaxerror:意外数字 $('#netPayment').change(calcLowerVatRateAndGrossAmount); /* $('#netPayment').change(fun

我不熟悉query/javascript,下面的代码在计算总值和税额时遇到了问题 用户输入的净金额。用户将输入双倍金额,总金额和增值税金额也定义为双倍金额。 有人能帮忙吗?当我尝试运行以下代码时,我得到一个错误:uncaughtsyntaxerror:意外数字

                $('#netPayment').change(calcLowerVatRateAndGrossAmount);
                /* $('#netPayment').change(function(){
                    calcLowerVatRateAndGrossAmount();
                }); */                  
    });     

    function calcVatRateAndGrossAmount(){                       
        var netPayment = parseFloat($('#netPayment').val());                        
        var vatAmount = 00.0;
        var VatRate = 20.0;
        var grossPayment = 0.00;
        var totalPaymentAmount = 0.00;
        if (netPayment !== '') {
            vatAmount = (netPayment * VatRate) / 100;
            grossPayment = (netPayment - vatAmount);                        
            $('#vatAmount').val(parseFloat(vatAmount.data).toFixed(2));
            $('#grossPayment').val(parseFloat(grossPayment.data).toFixed(2));
        } else {
            $('#vatAmount').val(vatAmount.amountNull);
            $('#grossPayment').val(grossPayment.amountNull);
        }
    };

所以你在这里计算一个数字

vatAmount = (netPayment * VatRate) / 100;
在这里,您将VATMount视为具有关键数据的对象

您应该只使用变量。简单的测试

console.log("variable itself: ", vatAmount);
console.log("key data: ", vatAmount.data);
所以你只需要这样做

$('#vatAmount').val(vatAmount.toFixed(2));
$('#grossPayment').val(grossPayment.toFixed(2));
对grossPayment执行相同的操作,并引用其他一些属性VATAMMOUNT.amountNull

应该是

$('#vatAmount').val("");  //or any error message
$('#grossPayment').val("");

请详细说明问题,以便我们了解需要查找的内容1问题是什么?2.data和.amountNull属性的一些详细信息可能会有所帮助。由于vatAmount是一个数字,您希望vatAmount.data是什么?同样,对于grossPayment和.amountNull?您引用的语法错误不在您引用的代码范围内。如果用户输入1000.00,vatrate为20.00,我希望VATAMUNT.data为200.00,grossAmount为8.00parseFloatvatAmount仍然是错误的。请注意,语法错误/键入问题应该关闭。你投了吗?@JanDvorak一个数字有什么问题?它只会返回一个数字。即使它有效,也会出错;-结果与论点有什么不同?谢谢,看起来好多了!当我添加一个新的金额时,它会计算正确的值,但当我清空净金额时,现有的值会保留。当用户执行此操作时,如何用空格替换总额和增值税金额?
$('#vatAmount').val(vatAmount.amountNull);
$('#grossPayment').val(grossPayment.amountNull);
$('#vatAmount').val("");  //or any error message
$('#grossPayment').val("");