博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery中attr和prop的区别
阅读量:5876 次
发布时间:2019-06-19

本文共 861 字,大约阅读时间需要 2 分钟。

在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了。

关于它们两个的区别,网上的答案很多。这里谈谈我的心得,我的心得很简单:

  • 对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
  • 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

 

假如你现在还在为自己的技术担忧,假如你现在想提升自己的工资,假如你想在职场上获得更多的话语权,假如你想顺利的度过35岁这个魔咒,假如你想体验BAT的工作环境,那么现在请我们一起开启提升技术之旅吧,详情请点击

上面的描述也许有点模糊,举几个例子就知道了。 

 这个例子里<a>元素的DOM属性有“href、target和class",这些属性就是<a>元素本身就带有的属性,也是W3C标准里就包含有这几个属性,或者说在IDE里能够智能提示出的属性,这些就叫做固有属性。处理这些属性时,建议使用prop方法。

这个例子里<a>元素的DOM属性有“href、id和action”,很明显,前两个是固有属性,而后面一个“action”属性是我们自己自定义上去的,<a>元素本身是没有这个属性的。这种就是自定义的DOM属性。处理这些属性时,建议使用attr方法。使用prop方法取值和设置属性值时,都会返回undefined值。

 

再举一个例子:

是否可见 是否可见

像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。

$("#chk1").prop("checked") == false$("#chk2").prop("checked") == true

如果上面使用attr方法,则会出现:

$("#chk1").attr("checked") == undefined$("#chk2").attr("checked") == "checked"

转载地址:http://ilzix.baihongyu.com/

你可能感兴趣的文章
[绝对原创] SAP Get User data by User ID
查看>>
WPF笔记(2.2 DockPanel)——Layout
查看>>
嵌入式工控机主板在无人机中的应用
查看>>
后台(22)——AJAX
查看>>
LVM pvcreate,vgcreate,lvcreate,mkfs
查看>>
DeepMind提出快速调参新算法PBT,适用GAN训练(附论文)
查看>>
深入浅出JVM
查看>>
【NIPS2017现场+数据也疯狂】最佳论文大奖公布,算法关注度超越深度学习排第一...
查看>>
MyBatis实现SaveOrUpdate
查看>>
WPF动态加载3D&nbsp;放大-旋转-平移
查看>>
Spring Boot工程支持HTTP和HTTPS,HTTP重定向HTTPS
查看>>
[20170324]dg相关进程.txt
查看>>
DataTable 更改在有数据列的类型方法
查看>>
nginx做本地目录映射
查看>>
用 Maven 运行 MyBatis Generator(Running MyBatis Generator With Maven)
查看>>
Apache Hadoop 3.0.0-alpha1主要改进
查看>>
大型项目开发: 头文件顺序
查看>>
中小型商业银行的软件安全测试之道
查看>>
Flink运行时之TaskManager执行Task
查看>>
6、如何自学Struts2之Struts2值栈和OGNL语言[视频]
查看>>