兼容的select动态添加options操作
日期:2009-04-29 阅读:46 分类:Javascript
代码:
select id="ddlResourceType" onchange="getvalue(this)"
/select
动态删除select中的所有options:
document.getElementById("ddlResourceType").options.length=0;
动态删除select中的某一项option:
document.getElementById("ddlResourceType").options.remove(indx);
//就是这句不兼容了,Firefox是不懂 remove 这个方法的,所以会报错了,当然也移除不了了
动态添加select中的项option:
document.getElementById("ddlResourceType").options.add(new Option(text,value));
上面在IE和FireFox都能测试成功,希望以后你可以用上。
其实用标准的DOM操作也可以,就是document.createElement,appendChild,removeChild之类的。
取值方面
function getvalue(obj)
{
var m=obj.options[obj.selectedIndex].value
alert(m);//获取value
var n=obj.options[obj.selectedIndex].text
alert(n);//获取文本
}
后来,发现这篇文章末端的那几句话,觉得可以用dom试试,嗯,果然可行.
var sObj=document.getElementById("ddlResourceType");
sObj.removeChild(sObj.options[indx]);
这样,上面这句就做到兼容了.
其他的代码都没有问题,可以兼容.
from:
select id="ddlResourceType" onchange="getvalue(this)"
/select
动态删除select中的所有options:
document.getElementById("ddlResourceType").options.length=0;
动态删除select中的某一项option:
document.getElementById("ddlResourceType").options.remove(indx);
//就是这句不兼容了,Firefox是不懂 remove 这个方法的,所以会报错了,当然也移除不了了
动态添加select中的项option:
document.getElementById("ddlResourceType").options.add(new Option(text,value));
上面在IE和FireFox都能测试成功,希望以后你可以用上。
其实用标准的DOM操作也可以,就是document.createElement,appendChild,removeChild之类的。
取值方面
function getvalue(obj)
{
var m=obj.options[obj.selectedIndex].value
alert(m);//获取value
var n=obj.options[obj.selectedIndex].text
alert(n);//获取文本
}
后来,发现这篇文章末端的那几句话,觉得可以用dom试试,嗯,果然可行.
var sObj=document.getElementById("ddlResourceType");
sObj.removeChild(sObj.options[indx]);
这样,上面这句就做到兼容了.
其他的代码都没有问题,可以兼容.
from:
相关文章
- The X-Frame-Options response header 2011-11-01
网友评论
#1: 2009-5-6 10:46:00 by Nianshi
后来,发现这篇文章末端的那几句话,觉得可以用dom试试,嗯,果然可行. 末端??太不明确了吧。是指“document.getElementById("ddlResourceType").options.remove(indx);
//就是这句不兼容了,Firefox是不懂 remove 这个方法的,所以会报错了,当然也移除不了了” 这里吗?
改成:
var sObj=document.getElementById("ddlResourceType");
sObj.removeChild(sObj.options[indx]);
实现删除。