Ответ 1
Точно так же, как концепция, я собрал следующее: это может быть лучший способ сделать это:
var vals = [];
document.getElementById("colors").onchange = function(){
vals.unshift(this.selectedIndex);
};
function getPrevious(){
alert(vals[1]); // you'll need more logic here
// this is purposefully simplistic
}
-
<select id="colors">
<option>Red</option>
<option>Green</option>
<option>Blue</option>
</select>
Закрытый пример:
Я попытался связать все это с самим выпадающим элементом. Честно говоря, это первый раз, когда я когда-либо добавлял функции в раскрывающееся меню, поэтому я не могу обещать, что это не будет иметь последствий:
var colors = document.getElementById("colors");
colors.vals = [];
colors.setPrevious = function() { this.vals.unshift(this.selectedIndex); }
colors.getPrevious = function() { return this.vals[1]; }
colors.onchange = function() { this.setPrevious(); this.getPrevious(); }
// set initial state
colors.setPrevious();