2013-07-24 69 views
10

我創建了一個基本的2單選按鈕窗體,如下面的示例所示。當選項改變時,單選按鈕「選中=選中」不會改變

觀察瀏覽器渲染,我們看到項目1被選中。我們檢查項目1和2.

當我點擊項目2,我希望項目1的檢查=檢查是刪除。我希望項目2獲得檢查=檢查的屬性。

這不是預期的行爲?

<div> 
    <span>Item 1</span> 
    <input type="radio" name="radio1" id="radio1" checked="checked" /> 
</div> 

<div> 
    <span>Item 2</span> 
    <input type="radio" name="radio1" class="checkbox" id="radio2" /> 
</div> 

http://jsfiddle.net/chrimbus/ZTE7R/1/

+0

@quentin及其他:您的回覆是巨大的,這是否確認那麼「選中」的_attribute_的預期行爲將不會自動更新**不使用Javascript ** – nthChild

+0

我能?通過使用僞選擇符應用樣式來設置「checked」單選按鈕和標籤的樣式:checked。這適用於IE9 +,Chrome和Firefox。 http://jsfiddle.net/sXjyL/4/ – nthChild

回答

13

checked屬性指定默認檢查單選按鈕,而不是當前籤一個。

請參閱this example code。點擊第二個單選按鈕,然後點擊重置。然後再次點擊第二個單選按鈕,然後切換,然後重置。

選中的屬性會給出當前的選中狀態的單選按鈕。

Checked attribute vs checked property

+0

正在等待那個*屬性*與*屬性*的區別:) – brbcoding

+0

@quentin您的回覆非常好,這是否確認屬性「checked」的預期行爲將會不使用Javascript自動更新? – nthChild

+0

是的。一旦頁面加載完成,只有JavaScript可以改變checked *屬性。 – Quentin

相關問題