我有一个HTML表,其中包含一个值以及每行的复选框。 当我单击该复选框时,它会激活一个脚本,该脚本会将此值添加到另一个固定单元格中。如果选中该复选框,则会添加该数字,如果未选中,则会减去该数字。
function val_sel_achat(val, id)
{
if (document.getElementById(id).checked)
{
document.getElementById('res_achat').innerHTML += val;
}
else
{
document.getElementById('res_achat').innerHTML -= val;
}
}
它主要运行良好,除了它似乎连接链而不是添加数字。 因此,如果我选中一个val = 100的方框,然后取消选中它,它会显示100,然后是0,这没关系。 但如果我检查两个不同的方框,如100和25,它会显示10025。
我如何更改代码以便显示125代码?
感谢。
答案 0 :(得分:1)
function val_sel_achat(val, id)
{
var x = document.getElementById('res_achat').innerHTML;
if (document.getElementById(id).checked)
{
document.getElementById('res_achat').innerHTML = parseFloat(x) + val;
}
else
{
document.getElementById('res_achat').innerHTML = parseFloat(x) - val;
}
}
答案 1 :(得分:0)
使用.parseFloat()
function val_sel_achat(val, id) {
var inner = document.getElementById('res_achat').innerHTML;
if (document.getElementById(id).checked) {
document.getElementById('res_achat').innerHTML = parseFloat(inner) + parseFloat(val);
} else {
document.getElementById('res_achat').innerHTML = parseFloat(inner) - parseFloat(val);
}
}
不使用复选框fiddle
工作的示例