使用Javascript在Selectboxs中执行算术计算

使用Javascript在Selectboxs中执行算术计算,javascript,html,Javascript,Html,我有这样一个案例: function update() { var id = this.id.substring(1); var value1 = parseInt(document.getElementById("a" + id).value); var value2 = parseInt(document.getElementById("b" + id).value); document.getElementById("c" + id).innerHTML =

我有这样一个案例:

function update() {
    var id = this.id.substring(1);
    var value1 = parseInt(document.getElementById("a" + id).value);
    var value2 = parseInt(document.getElementById("b" + id).value);
    document.getElementById("c" + id).innerHTML = value1 + value2;
}

当选择示例A=3和B=5,将自动更新C列中的8,依此类推不同的列和行时,我该怎么办

非常感谢您的帮助。 提前谢谢你

试试这个:

  • 调用选择框,如“a1”、“a2”、“b1”、“b2”

  • 调用C中的单元格,如“c1”、“c2”

  • 使选择框的
    onchange
    事件如下所示:

    function update() {
        var id = this.id.substring(1);
        var value1 = parseInt(document.getElementById("a" + id).value);
        var value2 = parseInt(document.getElementById("b" + id).value);
        document.getElementById("c" + id).innerHTML = value1 + value2;
    }
    

  • 干得好。这是我试图解决这个问题的版本:

    var table = document.getElementById('calc'),
        sel   = table.getElementsByTagName('select');
    
    for (var i = sel.length; i--; ) {
        sel[i].onchange = function() {
            var row  = this.parentNode.parentNode.rowIndex,
                cell = this.parentNode.cellIndex,
                val1 = +this.options[this.selectedIndex].value,
                val2 = +table.rows[row].cells[1 - cell].children[0].value;
    
            table.rows[row].cells[2].innerHTML = val1 + val2;
        };
    }
    


    这是一个基本的实现,您可能需要调整一些内容以匹配您的HTML结构等。

    好的,谢谢Pietu,让我试一下,我会给出反馈