首页 > 其他 > 详细

jq中的attr和prop属性

时间:2017-08-15 17:42:47      阅读:338      评论:0      收藏:0      [点我收藏+]

今天在做checkbox的全选等功能时刚开始用的是

$(‘input[type=‘checkbox‘]").attr("checked","true");
最后发现只有刷新第一次有效果,后面就没有效果了,最后发现是attr的问题,最后改成prop后发现是可以的,
$(‘input[type=‘checkbox‘]").prop("checked","true");
其中的原因如下:

jquery1.6中新加了一个方法prop(),官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值。

大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是undefined。

jq提供新的方法“prop”来获取这些属性,就是来解决这个问题的,以前我们使用attr获取checked属性时返回"checked"和"",现在使用prop方法获取属性则统一返回true和false。

那么,什么时候使用attr(),什么时候使用prop()?
1.添加属性名称该属性就会生效应该使用prop();
2.是有true,false两个属性使用prop();
3.其他则使用attr();



jq中的attr和prop属性

原文:http://www.cnblogs.com/yuanzhiguo/p/7366332.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!