如何使用jQuery删除checked =“checked”的未选中复选框?

时间:2013-08-06 16:54:28

标签: jquery

这是我目前的剧本

 <script>
        $().ready(function(){

                $('.prettycheckbox').click(function () {
                      $('.prettycheckbox input').removeAttr('checked');
                      $('.prettycheckbox a').removeClass('checked'); 

                      $("a", this).addClass('checked');
                      $("input", this).addAttr("checked");
                });

        });
 </script>

但它运行不正常,因为添加和删除类到链接的部分工作得很好,但是对于输入它不起作用。

如何使“选中”复选框如下所示:

<input class="payment_type" type="checkbox" value="1" name="payment_type" style="display: none;" checked="checked">

而其他所有人都是这样的?:

<input class="payment_type" type="checkbox" value="1" name="payment_type" style="display: none;">

怎么做?像使用jquery和复选框的输入无线电类型?

3 个答案:

答案 0 :(得分:10)

在,

jQuery 1.6 +

要更改复选框的属性,您应使用.prop()功能。

$('.prettycheckbox input').prop('checked', false);
$('.prettycheckbox input').prop('checked', true);

jQuery 1.5及以下

.prop()功能不存在,但.attr()的功能类似:

$('.prettycheckbox input').attr('checked', 'checked');

注意removeAttr有效,但addAttr不是。

答案 1 :(得分:6)

使用prop()更改checked

$('.prettycheckbox input').prop('checked', false);

还有其他需要注意的地方,方法addAttr不存在

答案 2 :(得分:0)

试试这个

document.getElementById("check1").checked = true;
document.getElementById("check1").checked = false;