2013-07-24 53 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

相关问题