$(this).attr('checked')得到的值为undefined

本文探讨了在不同版本的jQuery中,使用$(this).attr('checked')获取复选框状态的问题。在jQuery 1.6及更高版本中,此方法返回undefined,而早期版本则返回true/false。文章提供了两种解决方案:使用is(':checked')和prop('checked')方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当导入<script type="text/javascript" src="https://cdn.bootcss.com/jquery/1.4.0/jquery.js"></script>时

$(this).attr('checked')可以正常获取true|false,但是,

当导入<script type="text/javascript" src="https://cdn.bootcss.com/jquery/2.0.0/jquery.js"></script>时,

$(this).attr('checked')得到的值为undefined。

查询得知:来jquery 1.6以前用$(this).attr('checked')得到的是true/false,但到了1.6以后,$(this).attr('checked')就有点问题了。

  解决方案如下:

    1. 使用is()

        例句: $(this).is(":checked");             // 注意是':checked',有冒号的!

    2. 使用prop()方法,JQ1.6之后,可以通过attr方法去获得属性,通过prop方法去获得特性,属性指的是“name,id”等等,特性指的是“selectedIndex, tagName, nodeName”等等。 

        例句: $(this).prop('checked');

参考自:https://www.cnblogs.com/andy-zheng/p/6029259.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值