`
晨星★~雨泪
  • 浏览: 442996 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

js 控制 select

阅读更多
<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]);

这样,上面这句就做到兼容了.




[html]
<select id="mysel" name="mysel">
  <option value="1">1 xxxxxxxxxx</option>
  <option value="2">2 yyyyyyyyyy</option>
  <option value="3">3 zzzzzzzzzz</option>
  <option value="4">4 wwwwwwwwww</option>
</select>
<button onclick="setSel(3)">设置第3项为选中项</button>
<button onclick="clearSel()">清空选择框</button>
<button onclick="fillSel()">填充选择框</button>
<button onclick="removeSel()">移除第一项</button>
<button onclick="editSel()">修改第一项</button>

<script type="text/javascript">
    function setSel(str){
        with(document.all){   
            for(var i=0;i<mysel.options.length;i++){               
                if (mysel.options[i].value==str){
                    mysel.selectedIndex=i;
                    break;
                }
            }           
        }
    }


    function clearSel(){
        with(document.all){   
            mysel.options.length=0;
        }
    }

    function fillSel(){
        with(document.all){
            mysel.options.length=0;
            mysel.options[0] = new Option("1 xxxxxxxxxx","1");
            mysel.options[1] = new Option("2 yyyyyyyyyy","2");
            mysel.options[2] = new Option("3 zzzzzzzzzz","3");
            mysel.options[3] = new Option("4 wwwwwwwwww","4");
            mysel.options[4] = new Option("5 aaaaaaaaaa","5");

            mysel.selectedIndex = 4;
        }
    }

    function removeSel(){
        with(document.all){
            mysel.remove(0);
            if (mysel.options.length>0){
                mysel.selectedIndex=0;
            }
        }
    }

    function editSel(){
        with(document.all){
            if (mysel.options.length>0){
                mysel.options[0] = new Option("这是新的第一项","new Value")
                mysel.selectedIndex=0;
            }
        }
    }
</script>

[/html]

注:所有内容都从网上收集
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics