簡體   English   中英

Javascript不顯示其中帶有“”的字符串

[英]Javascript not displaying strings with “ ' ” in them

我正在編寫一個Javascript函數,其中不顯示帶有撇號(')的字符串。 有辦法解決這個問題嗎? 下面的函數假定x是一個字符串。

function addItem(x, y) //adds item on screen and adds Total
    {
        var newRow = "<tr><td>"+x+"</td><td>€"+y.toFixed(2)+"</td><td><input type=\"button\" onclick=\"subtract("+y+")\" value = \"X\"></td></tr>"
        $('#order').append(newRow);

        document.getElementById("currentorder").value += newRow;

        //Adds Total Value
        var total = document.getElementById('price').innerHTML;
        total = parseFloat(total);
        var z = +y + +total;
        document.getElementById('price').innerHTML=z.toFixed(2);
        event.preventDefault();
    }

令人困惑的加法運算符

以下行看起來有些偏離:

var z = +y + +total;

如果只想添加ytotal ,則將其簡化為:

var z = y + total;

考慮可能的解析錯誤

另一個想法是在調用parseFloat()函數之前,考慮去除字符串中所有與非浮點數無關的字符(即非十進制和數字):

var total = parseFloat(document.getElementById('price').innerHTML.replace(/[^\d\.]/g,''));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM