jQuery中的prop()与attr()的用法区别

attr()方法

一般jQuery中,获取或设置属性的值是通过attr()方法。如:

  • 返回文档中所有图像的src属性值:$(“img”).attr(“src”);
  • 为所有图像设置src和alt属性:$(“img”).attr({ src: “test.jpg”, alt: “Test Image” });

prop()方法

而jquery的1.6版本中,增加了prop(),方法,有什么用意呢?大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = “disabled”,checked=”checked”,比如用attr(“checked”)获取checkbox的checked属性时选中的时候可以取到值,值为”checked”但没选中获取值就是undefined。

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

那么,我们的结论是
1.添加属性名称该属性就会生效应该使用prop();
2.是有true,false两个属性使用prop();如checked、selected、disabled
3.其他则使用attr();

 prop()使用方法

语法:prop(name|properties|key,value|fn)
获取在匹配的元素集中的第一个元素的属性值。

随着一些内置属性的DOM元素或window对象,如果试图将删除该属性,浏览器可能会产生错误。jQuery第一次分配undefined值的属性,而忽略了浏览器生成的任何错误

  • 选中复选框为true,没选中为false:

  • 禁用页面上的所有复选框:

  • 禁用和选中所有页面上的复选框:

  •  通过函数来设置所有页面上的复选框被选中:

官方建议attr(),prop()的使用表

Attribute/Property .attr() .prop()
accesskey  
align  
async
autofocus
checked
class  
contenteditable  
draggable  
href  
id  
label  
location ( i.e. window.location )
multiple
readOnly
rel  
selected
src  
tabindex  
title  
type  
width ( if needed over .width() )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值