首页 > Web开发 > 详细

【Jquery】prop与attr的区别

时间:2015-08-14 19:03:45      阅读:175      评论:0      收藏:0      [点我收藏+]

最近因项目需要用到复选框,其中一个控制全选。

// 全选
$(".ckb_all").click(function(){
    if($(this).attr("checked") == true){
		$(":input[name='ckb_img']").attr("checked",true);
	}else{
		$(":input[name='ckb_img']").attr("checked",false);
	};
});

一开始是像上面这样做是可以实现效果的,复制粘贴同样的代码到其他需要的地方,结果发现不起作用,找了半天,发现用的jquery版本是1.8的,所以使用attr不起作用。下面就讲讲prop与attr的主要区别。

jquery在1.6版本中添加了prop方法,与attr的主要区别是:
对于HTML元素本身的固有属性,使用prop方法
对于HTML元素开发者自定义的属性,使用attr方法

举个例子:
<a href="http://www.hao123.com" class="">hao123</a>
对于a标签来说,像href、class这些属性是它本来就有的,在获取时一般就用prop;


<a href="http://www.hao123.com" class="" goto="hao123">hao123</a>

在这个例子中,a标签本身并没有goto属性,是我们自定义的,在获取时就用attr


像checkbox、select,选中属性对应“checked”和“selected”,都是固有属性,因此在1.6以上版本的jquery中需要使用prop方法才能获取到正确的结果。
比如checkbox的checked属性,使用prop,选中时返回true,没选中时返回false;如果使用attr的话,选中时返回checked,没选中时返回undefined。


Author:顾故

Sign:别输给曾经的自己








版权声明:本文为博主原创文章,未经博主允许不得转载。

【Jquery】prop与attr的区别

原文:http://blog.csdn.net/lzgs_4/article/details/47665819

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