2011-02-08 44 views
0

HTML:對ID的點擊= checkMain我想「兒童」(複選框)得到啓用,「child1」(單選按鈕)被禁用

<input type="radio" id="chkMain" name="chkMain"/> 
<input type="radio" id="chkMain1" name="chkMain" /> 
<input type="radio" id="chkMain2" name="chkMain" /> 

<input class="child" type="checkbox" id="chk1" disabled="true" /> 
<input class="child" type="checkbox" id="chk2" disabled="true" /> 
<input class="child" type="checkbox" id="chk3" disabled="true" /> 
<input class="child" type="checkbox" id="chk4" disabled="true" /> 
<input class="child" type="checkbox" id="chk5" disabled="true" /> 
<input class="child" type="checkbox" id="chk6" disabled="true" /> 
<input class="child" type="checkbox" id="chk7" disabled="true" /> 

<input class="child1" type="radio" id="tone1" disabled="true"/> 
<input class="child1" type="radio" id="tone2" disabled="true"/> 
<input class="child1" type="radio" id="tone3" disabled="true"/> 

的Javascript:

$(function(){ 
    $("input:radio[id=checkMain]").click(function(){ 
     if (this.checked) { 
      $("input:checkbox.child").removeAttr("disabled"); 
     } 
     else { 
      $("input:checkbox.child, input:radio.child1").attr("disabled", "enabled"); 

     } 
    }); 
}); 

時我第一次點擊id = checkMain然後點擊id = checkMain1它完美的作品。但是當我第一次點擊id = checkMain1然後在id = checkMain我想讓child1被禁用

回答

0

很簡單 - 添加值屬於你的弧度IO按鍵如下:

<input type="radio" id="chkMain" name="chkMain" value="main1"/> 
<input type="radio" id="chkMain1" name="chkMain" value="main2"/> 
<input type="radio" id="chkMain2" name="chkMain" value="main3"/> 

比jQuery代碼做沿着線的東西:

if($('#chkMain').val() == 'main1') 
{ 
    $('.child').removeAttr('disabled'); 
    $('.child1').attr('disabled', 'disabled'); 
} 
else 
{ 
    $('.child').attr('disabled', disabled'); 
    $('.child1').removeAttr('disabled', 'disabled'); 
} 
0

重寫你的HTML這樣的:

<input type="radio" id="chkMain" name="chkMain"/> 
<input type="radio" id="chkMain1" name="chkMain" /> 
<input type="radio" id="chkMain2" name="chkMain" /> 

<input class="child" type="checkbox" id="chk1" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk2" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk3" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk4" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk5" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk6" disabled="disabled" /> 
<input class="child" type="checkbox" id="chk7" disabled="disabled" /> 

和js像這樣:

$(function() { 
    $("input:radio[name='chkMain']").click(function() { 
     if ($(this).attr('id') == 'chkMain') 
     { 
      $("input.child").removeAttr("disabled"); 
     } 
     else 
     { 
      $("input.child, input:radio.child1").attr("disabled", true); 

     } 
    }); 
}); 

試一下:http://jsfiddle.net/X6JxC/2/

相關問題