Javascript数组指向函数相似的变量名

Javascript array to point variable name with similar function

我想用数组缩短这个函数

            document.mySchedule.breakfast.onchange = function() {
                var id = document.mySchedule.breakfast.selectedIndex;
                var val = document.mySchedule.breakfast[id].value;
                strUser[0]=val;
            }
            document.mySchedule.lunch.onchange = function() {
                var id = document.mySchedule.lunch.selectedIndex;
                var val = document.mySchedule.lunch[id].value;
                strUser[1]=val;
            }
            document.mySchedule.dinner.onchange = function() {
                var id = document.mySchedule.dinner.selectedIndex;
                var val = document.mySchedule.dinner[id].value;
                strUser[2]=val;
            }

我正在尝试这种方式,但似乎没有用。

var selectData = ["breakfast","lunch","dinner"]
for(i = 0; i < selectData.lenght; i++) {
                document.mySchedule.selectData[i].onchange = function() {
                    var id = document.mySchedule.selectData[i].selectedIndex;
                    var val = document.mySchedule.selectData[i][id].value;
                    strUser[i]=val;
                }
            }

顺便说一句,这个用来控制选择器。 希望有人能帮忙。谢谢

使用:

var selectData = ["breakfast","lunch","dinner"]
for(i = 0; i < selectData.lenght; i++) {
    var e = document.getElementById(selectData[i]);
    e.onchange = function(){
        strUser[i] = e.value;
    };
}