Jquery 中 $('obj').attr('checked',true)失效的几种解决方案

$('input[name="warehouseLevel"]').each(function(i,obj){

$(this).attr("checked",false);

if(row.isQuery==$(this).val()){

$(this).attr("checked",true);

}

});

开发中发现这样radio只能选中一次 后面就无法选中,


最后找到解决方法:

1、$('obj').prop('checked',true)

2、

$(input[name="warehouseLevel"].each(function(){

    this.checked=true;

    })

为什么:attr为失效?因为checked属于为原型对象的属性。而attr在remove原型对象时会出错。原型对象指的是自身自带的,无法移除。prop会忽略这个错误。而attr操作的是普通非原型对象(可移除)。js 的dom对象属性是可以随意增加的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值