[英]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;
如果只想添加y
和total
,則將其簡化為:
var z = y + total;
考慮可能的解析錯誤
另一個想法是在調用parseFloat()
函數之前,考慮去除字符串中所有與非浮點數無關的字符(即非十進制和數字):
var total = parseFloat(document.getElementById('price').innerHTML.replace(/[^\d\.]/g,''));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.