ret----> 100001,北京001|100002,北京002|,200001,南京001|...........很长有将近10000个插入下拉框中,用下面方法要将近一分钟,怎么才能更快?
var ops = ret.split("|");
for (var j = 0; j < ops.length; j++) {
var op = ops[j];
var ss = op.split(",");
var oOption = document.createElement("OPTION"); //创建一个OPTION节点
obj.options.add(oOption); //将节点加入region_name选项中
oOption.innerText = ss[1]; //设置选择展示的信息
oOption.value = ss[0]; //设置选项的值
}
var ops = ret.split("|");
for (var j = 0; j < ops.length; j++) {
var op = ops[j];
var ss = op.split(",");
var oOption = document.createElement("OPTION"); //创建一个OPTION节点
obj.options.add(oOption); //将节点加入region_name选项中
oOption.innerText = ss[1]; //设置选择展示的信息
oOption.value = ss[0]; //设置选项的值
}
解决方案 »
- 谁知道博客中图片转个不停是什么原理?
- 配置了APACHE和TOMCAT负载均衡后,firefox中的window.document.getElementById不能用
- javascript的标签语句如何用呀
- 分享一个js效果--对图片禁止用右键
- 关于简单的样式切换
- 这样写,取得Frame里面的值有错,帮忙看看
- 在showModalDialog窗口,如何刷新父窗口?
- sublime text2 插件显示安装成功,可看不到插件。
- 完全按照书上例子做的,怎么还会错呢?大家帮忙看看问题出在哪儿?
- 求助!为森么我的react跑不起来呀qaq
- 新手,逻辑非运算符问题?
- 做WEB应用程序最好的JS框架是什么?
for (var i = 0; i < 10000; i++) { sel.options[i].text = sel.options[i].value = defenVal; }这样会快些 但10000个下拉框...
</select>
<script type='text/javascript'>
(function(){
var list = document.getElementById("list"),op=[];
for(var i=0,j=10000;i<j;i++){
op[op.length] = "<option value='"+i+"'>"+i+"</option>";
}
if(list.outerHTML){
list.outerHTML = list.outerHTML.replace(/></,">"+op.join('')+"<");
}
else if(list.innerHTML)
{
list.innerHTML = op.join('');
}
})()
</script>
要兼容的话用innerHTML模拟
这个不是用在下拉框的
是用在图片或html内容的