热门

最新

红包

立Flag

投票

同城

我的

发布
weixin_43917072
举头望宇宙
4 年前
trueweixin_43917072

最近项目中,遇到一个页面,里面有多级下拉框联动的复杂逻辑,需要根据不同情况显示不同的下拉选:

首先想到的是style="display:none"的做法,但是IE8上的option设置该属性是无效的

然后又试了$.wrap方法:
用jquery的 $.wrap方法在option外面添加一个父元素 通过父元素控制option的隐藏
function toggle(type) {
var option = $("select option[value="2"]");
if(type == "show"){
var span = option.parent("span");
span.children().clone().replaceAll(span);//去除包裹的span
}else{
option.wrap("<span style="display:none"></span>");//外层包裹一个span元素
}
}
发现IE8也不支持

最后试了动态添加到select,才成功:
1、动态删除select中的所有options:
document.getElementById("xxxx").options.length=0;
2、动态添加select中的项option:
document.getElementById("xxxx").options.add(new Option(text,value));

CSDN App 扫码分享
分享
评论
1
打赏
  • 复制链接
  • 举报
下一条动态
立即登录