我建議爲值使用一個對象,因爲您可以收集一個對象中的所有值而不會污染全局範圍。
var foo = document.getElementById("something"),
values = {};
foo.addEventListener('change', function(e) {
values.value = this[this.selectedIndex].text;
values.id = this[this.selectedIndex].value;
}, false);
alert(values.value);
對於更加動態的版本,我建議使用values
以上的封閉。
var foo = document.getElementById("something"),
values = {};
foo.addEventListener('change', function (object) {
return function(e) {
object.value = this[this.selectedIndex].text;
object.id = this[this.selectedIndex].value;
};
}(values), false);
alert(values.value);
在外面聲明,在裏面初始化它們。 – Li357
如何?任何在外部聲明的東西在函數內部沒有任何作用 – meskerem
https://jsfiddle.net/ba4400jh/1/ – Li357