jQuery初学经验:attr()和props()区别 复选框二次点击问题

通过jQuery的选择器可得到复选框的属性设置,使用attr()属性设置,可以实现点击一个复选框控制其他复选框是否被选中,方法如下所示,

$('#beijie').click(function () {
        if($('#beijie').is(":checked")){//被选中
            $('.beijie_able').attr("checked",true);
        }
        else{
            $('.beijie_able').attr("checked",false);
        }
    })

但是在二次点击的时候该方法不会生效

通过查找资料发现,prop()可实现多次点击还能控制复选框的状态

原因如下
attr操作的是文档节点的属性,针对HTML元素属性,在1.6以前,attr获取表单元素的checked、selected、disabled的属性和prop一样都返回boolean类型,在1.6以后,其返回string类型,表示文档加载时的初始状态,即使之后更改该属性也不会变化。

prop操作的是js对象的属性,针对Dom元素属性,是jQuery1.6以后才有的函数

重点:如果具有false和true两个值的属性,比如checked、selected或disable使用prop,其他使用attr。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值