我在pageload里是这样做的,但行不通:
先初始化,chk2.attributes["disabled"] = "true";
          chk3.attributes["disabled"] = "true";
再加控制,chk1.attributes["onclick"] = "document.getElementById('" + chk1.clientid + "').disabled=this.checked;";但不工作,不知道为什么?

解决方案 »

  1.   

    chk1.attributes["onclick"] = "document.getElementById('" + chk1.clientid + "').disabled=this.checked;";你这是控制chk1的呀,改称相应的chk2吧
      

  2.   

    to lbaeolus() 
    你跟我写的不一样吗?
      

  3.   

    可以用ajax,javascript不知行不行
      

  4.   

    我不会ajax,先用javascript解决吧。
      

  5.   

    chk1.attributes["onclick"] = "document.getElementById('" + chk1.clientid + "').disabled=this.checked;";
    ------------------------------------
    你写错了吧。chk1控制chk1,自己控制自己,肯定有问题
      

  6.   

    <script>
    function fnc(obj){
    var s = document.getElementsByName("chk");
    if (obj.checked){
    for (var i=0;i<s.length;i++){
    s[i].disabled = true;
    }
    }
    else{
    for (var i=0;i<s.length;i++){
    s[i].disabled = false;
    }
    }
    }
    </script>
    <input type="checkbox" onclick="fnc(this)">
    <br>
    <input type="checkbox" name="chk">
    <input type="checkbox" name="chk">
      

  7.   

    用javascript获得页面上的input  判断是不是checkbox  是则设置它的属性
      

  8.   

    改一下:
    我在pageload里是这样做的,但行不通:
    先初始化,chk2.attributes["disabled"] = "true";
              chk3.attributes["disabled"] = "true";
    再加控制,chk1.attributes["onclick"] = "document.getElementById('" + chk2.clientid + "').disabled=this.checked;" + 
    "document.getElementById('" + chk3.clientid + "').disabled=this.checked;";现在的问题是,如果我不加这两句chk2.attributes["disabled"] = "true";
                                  chk3.attributes["disabled"] = "true";工作没问题。但我必须首先要初始化chk2和chk3,因为chk1是unchecked。加了这两句,就出错了,不知道为什么?
      

  9.   

    出错的现象是:无论点击chk1是checked或unchecked,chk2和chk3都没变化,仍然是disabled为true。
      

  10.   

    chk2,chk3是受chk1控制的吧
    你可以这样,将chk2,chk3的name属性设为一样
    然后用
    function fnc(obj,chkname){
    var s = document.getElementsByName(chkname);
    if (obj.checked){
    for (var i=0;i<s.length;i++){
    s[i].disabled = true;
    }
    }
    else{
    for (var i=0;i<s.length;i++){
    s[i].disabled = false;
    }
    }
    }调用的时候
    fnc(this,你要控制的那一组checkbox的name值)
    这样就可以用chk1控制Name值相同的chk2和chk3了
      

  11.   

    try:chk1.attributes["onclick"] = "if(!this.ckecked){document.getElementById('" + chk2.clientid + "').removeAttribute('disabled');document.getElementById('" + chk3.clientid + "').removeAttribute('disabled');}else{document.getElementById('" + chk2.clientid + "').disabled = 'true';document.getElementById('" + chk3.clientid + "').disabled = 'true';"
      

  12.   

    LZ应该用客户端的checkbox来控制,在后台用Request.Form来获取值