0
function totalPrice()
        {
        var totalItems = document.getElementsByName("price").length;
        var total = 0;
        var rgx = /[^0-9]\x2e$/g;
        var price;
        var string_in = document.getElementsByName("price");

        for (var x=0; x<totalItems-1; x++){

            price = new Number(rgx.exec(string_in[x].text));
            parseFloat(total) = parseFloat(total) + parseFloat(price); //This is where the error occurs
        }
        document.getElementById("total").innerHTML = ' $' + total;
        }

这是脚本执行的函数,我的“购物车”中有 x 个项目。我们必须只用 Javascript 编写这个函数。没有 php。命名元素包含 123.45 美元(或更多位数)形式的价格

4

1 回答 1

4

呃......只需parseFloat()从左侧移除。

旁注:始终以整数工作,尤其是在金钱方面。在这种情况下,将您的价格以美分显示在代码端。仅在最后除以 100(或什至仅通过字符串函数插入小数点)以显示以美元为单位的结果。这将避免浮点不准确。

于 2012-10-16T16:41:42.900 回答