obj.disabled=false;
obj是一个select控件。
在火狐下这段代码有效,在IE6下无效,何故?我改成 if(drl.value==1)
      {
        obj.removeAttribute("disabled")
      }
      else
      {
        obj.setAttribute("disabled","disabled");
      }还是不行。为什么?

解决方案 »

  1.   

    if(drl.value==1)
      {
      obj.removeAttribute("disabled")
      }
      else
      {  obj.setAttribute("disabled",navigator.appName == "Microsoft Internet Explorer"?"disabled":"false");
      }
      

  2.   

    放到onclick事件中处理
    如果在onchange里,ie有时要焦点移开才触发。
    <html>
    <head>
    <title></title>
    <script>
    function check(checked) {
    var select_number = document.getElementById("select_number");
    document.title = new Date();
    select_number.disabled = checked;
    }
    </script>
    </head>
    <body>
    <input type="checkbox" onclick="check(this.checked)"/>
    <select id="select_number"><option value="1">1</option><option value="2">2</option></select>
    </body>
    </html>
      

  3.   

    在IE6下无效,试了下好像有效呀:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
        
        <HEAD>
            <TITLE>
                test
            </TITLE>
            <script type="text/javascript">
                function test() {
                    var obj1 = document.forms[0].txttest;
                    var obj2 = document.forms[0].seltest;                if (obj1.value == 1) {
                        obj2.removeAttribute("disabled")
                    } else {
                        obj2.setAttribute("disabled", "disabled");
                    }
                }
            </script>
        </HEAD>
        
        <BODY>
            <form name="form1">
                <input name="txttest" type="text" value="2" />
                <input name="btntest" type="button" value="test" onclick="test();" />
                <select name="seltest">
                    <option value="1">
                        1111
                    </option>
                </select>
            </form>
        </BODY></HTML>