2010-01-04 48 views
0

我想要一組單選按鈕,它們在單擊複選框之前處於非活動狀態。如何使用jQuery使一組單選按鈕處於非活動狀態?

換句話說,當用戶選中一個複選框時,它將允許用戶使用單選按鈕。如果用戶取消選中複選框,它將使單選按鈕處於不活動狀態,以便用戶不能再選擇它們。

有沒有使用jQuery的解決方案,我可以用它來實現這一點?

回答

5

假設單選按鈕都相同的名字,那麼你可以使用attribute selector此:

$('#checkboxid').click(function() { 
    $('input[name="radiobuttonname"]').attr('disabled', !this.checked); 
}); 

這將使單選按鈕,如果選中該複選框,並禁用未選中時。

+0

這是完美的!正是我在找什麼。謝謝!什麼!this.checked做什麼?我找不到任何文件。另外,如何使用切換開關將任何帶有單選按鈕的文本變灰? – zeckdude 2010-01-04 22:47:27

+1

'this'指的是觸發'click'事件的元素,因此複選框本身。如果複選框被選中,則this.checked返回布爾值「true」。另見http://wwd.w3schools.com/jsref/dom_obj_checkbox.asp。 '!'恰好顛倒了布爾值,例如'true'變成'false'。你可以在CSS和'toggleClass()'的幫助下在jQuery中設置文本樣式。另見http://docs.jquery.com/Attributes/toggleClass假設這些文本是由'

+0

再次感謝您對ToggleClass的幫助。奇妙地工作! – zeckdude 2010-01-04 23:43:02

相關問題