0

コードを複製したり ID を変更したりせずに、2 つの異なる要素で同じ関数を使用したいと考えています。ID をパラメーターとして関数に渡したいのですが、うまくいきません。

function getSelected(id){
            var selected = new Array();
            **var selObj = document.getElementById(id);** //The problem is here
            var count = 0;
            for (x=0; x<selObj.options.length; x++){
                if (selObj.options[x].selected){
                    selected[count] = selObj.options.value;
                    count++;
                }
            }
            alert(count)
        }

何か案は?

4

1 に答える 1

1

エラーが別の場所、特に次の行にあるように見えます。

selected[count] = selObj.options.value;

そうではありませんか:

selected[count] = selObj.options[x].value;

または(追加の「カウント」変数は必要ありません)

selected.push( selObj.options[x].value );

(さらに、 のvar前にa がないx = 0ため、 xa グローバル変数が作成されます。)

于 2012-06-28T16:49:20.067 に答える