<select id = "select1" name = "select1" size=1>
<option value="1">test1</option>
<option value="2">test2</option>
<option value="2">test3</option>
</select>现在需要设置默认值为test3,JS中应该怎么写,因为value可能有重复,所以只能使用里面的text来定位

解决方案 »

  1.   


    <select id = "select1" name = "select1" size=1> 
    <option value="1">test1 </option> 
    <option value="2">test2 </option> 
    <option value="2" selected>test3 </option> 
    </select> 
      

  2.   

    用js的话<script>
        function selectStr(str){
            var sel=document.getElementById("select1").options;
            for(var i=0;i<sel.length;i++){
                if(sel.options[i].text==str){
                    sel.options[i].selected=true;
                }
            }
        }
        window.onload=function(){
            selectStr("test3")
        }
    </script><select id = "select1" name = "select1" size=1>
    <option value="1">test1 </option>
    <option value="2">test2 </option>
    <option value="2">test3 </option>
    </select>
      

  3.   


    <script type="text/javascript">
        window.onload = function() {
            var sel = document.getElementById("select1");
            var option = sel.getElementsByTagName("option");
            var len = option.length;
            for (var i = 0; i < len; i++) {
                if (option[i].innerHTML = "test3") {
                    option[i].setAttribute("selected", "selected");
                    break;
                }
            }
        }</script>
    <select id = "select1" name = "select1" size=1>
    <option value="1">test1 </option>
    <option value="2">test2 </option>
    <option value="2">test3 </option>
    </select> FF没有text属性
      

  4.   

      这个简单啊 ,你取到那个<selset>  然后 取得它的  children 的集合 ,写一个 循环 ,如果它的 子类的  innerText  等于 test3 的话就 把这个  子类的  select 改成  ture。