3

次のようなケースがあります。

ここに画像の説明を入力

例 A = 3 と B = 5 を選択すると、列 C の 8 が自動的に更新されます。異なる列と行についても同様です。

助けていただければ幸いです。よろしくお願いします!

4

2 に答える 2

3

これを試して:

  1. 「a1」、「a2」、「b1」、「b2」などの選択ボックスを呼び出します

  2. 「c1」、「c2」のようにCのセルを呼び出します

  3. 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;
    }
    
于 2013-03-17T07:23:35.190 に答える
2

ナイスタスク。これは、私がそれを解決しようとする方法の私のバージョンです:

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;
    };
}

http://jsfiddle.net/M4jCJ/1/

これは基本的な実装であり、HTML 構造などに合わせて何かを調整する必要がある場合があります。

于 2013-03-17T07:48:10.953 に答える