搜索互联网上,看到的创建select的办法五花八门,但是都认为无法实现firefox与ie的通用创建办法。
我查了一下犀牛书。讲解了一个简单的通用的创建的方法。
我将这个方法抄下来,就成了下面的函数。
只要传进去相应的两个数组,就可以创建出来一个完整的select节点。
其中,
val:
option的可能的值的数组,
name:
显示出来的文字的数组,
def:
默认的val的值。
var createSelect = function(val, name, def){
var select = document.createElement(‘select’);
for(var i = 0; i < val.length; i++){
select.options[select.options.length] = new Option(name[i], val[i], def == val[i], def == val[i]);
}
return select;
}
示例:
var vals = [1, 2, 3, 4];
var names = [‘春‘, ’夏’, ‘秋‘, ’冬’];
var select = createSelect(vals, names, 1);
document.appendChild(select);
非常实用的创建select的办法。
绝对简单实用。不搞一些乱七八糟的花样。
一目了解,轻松使用。兼容性倍棒!
显示的兼容性问题不大,
具体在IE6下面有一个javascript的兼容性问题,会导致selectedIndex的值有所不同。
需要注意。