用jquery检查单选按钮

时间:2013-05-02 05:27:33

标签: jquery radio-button

我有这段代码片段用jquery检查/取消选中radiobutton。

 $.each(options, function (index, item) {                   
                $optionli.find("li").eq(index)
                                    .find("input[type='radio']")
                                    .attr("checked", item.IsAnswer);

            });

item.IsAnswer返回“true”或“false”,但是未检查单选按钮,但在其html视图中,“checked”属性设置为“checked” enter image description here

这样的事情会发生什么原因?

由于

2 个答案:

答案 0 :(得分:1)

试试这个: - 使用prop代替attr

选中属性不会生效或错误。 checked的存在暗示它被检查。

$.each(options, function (index, item) {                   
                $optionli.find("li").eq(index)
                                    .find("input[type='radio']")
                                    .prop("checked", item.IsAnswer);

            });

答案 1 :(得分:1)

checked是一个属性,你应该使用prop方法,当一个布尔属性如disabled或checked被设置为一个元素时,该值被映射到相关的DOM属性元素(浏览器执行此操作)和attrremoveAttr方法不会更改元素的属性,因为jQuery 1.6用于修改属性,应使用prop()方法代替{{ 1}}。

attr