jquery中attr和prop的区别分析
参考来源:http://www.jb51.net/article/62308.htm
在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了。
区别:
• 对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
• 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。
上面的描述也许有点模糊,举几个例子就知道了。
<a href="http://www.baidu.com" target="_self" class="btn">百度</a>
这个例子里<a>元素的DOM属性有“href、target和class",这些属性就是<a>元素本身就带有的属性,也是W3C标准里就包含有这几个属性,或者说在IDE里能够智能提示出的属性,这些就叫做固有属性。处理这些属性时,建议使用prop方法。
代码如下:
<a href="#" id="link1" action="delete">删除</a>
这个例子里<a>元素的DOM属性有“href、id和action”,很明显,前两个是固有属性,而后面一个“action”属性是我们自己自定义上去的,<a>元素本身是没有这个属性的。这种就是自定义的DOM属性。处理这些属性时,建议使用attr方法。使用prop方法取值和设置属性值时,都会返回undefined值。
再举一个例子:
<input id="chk1" type="checkbox" />是否可见 <input id="chk2" type="checkbox" checked="checked" />是否可见
像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。
$("#chk1").prop("checked") == false $("#chk2").prop("checked") == true
如果上面使用attr方法,则会出现:
$("#chk1").attr("checked") == undefined
$("#chk2").attr("checked") == "checked"
转载于:https://www.cnblogs.com/ljblog/p/7743232.html
jquery中attr和prop的区别分析相关推荐
- Jquery中attr与prop的区别
prop()函数的结果: 1.如果有相应的属性,返回指定属性值. 2.如果没有相应的属性,返回值是空字符串. attr()函数的结果: 1.如果有相应的属性,返回指定属性值. 2.如果没有相应的属性, ...
- jquery 中attr和prop的区别
在jQuery API中也有专门解释: Attributes VS. Properties 在一些特殊的情况下,attributes和properties的区别非常大.在jQuery1.6之前,.at ...
- 转,jquery中attr和prop的区别
https://www.cnblogs.com/Showshare/p/different-between-attr-and-prop.html 像checkbox,radio和select这样的元素 ...
- jQuery中attr()和prop()方法的介绍
1.jQuery中用attr()方法来获取和设置元素属性.attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式. attr(属性名) ...
- JS中attr 和 prop 的区别
attr : 设置或返回被选元素的属性值. prop : 获取在匹配的元素集中的第一个元素的属性值. attr 和 prop 的本质 attr 是 attribute 的缩写,prop 是 prope ...
- 关于jQuery中.attr()和.prop()
功能需求是这样的,两个radio:男和女,一个button:重置.启动页面默认选中男,在用户选择女之后又点击重置按钮,需要恢复到默认状态. <input type="radio&quo ...
- jQuery中attr和prop方法的区别
2019独角兽企业重金招聘Python工程师标准>>> 相比attr,prop是1.6.1才新出来的,两者从中文意思理解,都是获取/设置属性的方法(attributes和proper ...
- jquery中attr和prop以及removeAttr和removeProp的区别
结论:attr和prop都可以获取自定义对象的属性值,区别是attr能获取标签元素自定义属性,prop无法获取,返回undefined,它只能获取标签自带属性. removeAttr标签上的属性都可以 ...
- jQuery函数attr()和prop()的区别
在jQuery中,attr()函数和prop()函数都用于设置或获取指定的属性,它们的参数和用法也几乎完全相同. 但不得不说的是,这两个函数的用处却并不相同.下面我们来详细介绍这两个函数之间的区别. ...
最新文章
- 100万奖金池,这不仅仅是场比赛
- 平衡二叉树-FHQ Treap(无旋平衡树)c/c++代码实现
- ICCV 2021 | 最新开源!多视角几何和注意力机制实现新视角合成
- vue 模仿今日头条demo
- vue插槽样式_Vue为什么要有插槽
- GNN 笔记:图上的傅里叶变换
- 安卓okhttp连接mysql_android中okhttp实现断点上传示例
- int与byte转换(四字节)
- oracle查询表nextval,Oracle Database 建立与查询 Sequence
- 《学习CSS布局》学习笔记
- 如何用VS2005制作Web安装程序
- JZOJ 1235. 洪水
- CentOS 7 重装mysql编译过程报错解决方法
- IE8 SVG Viewer下一些对象属性和方法
- Navicat premium注册机打不开的解决办法
- MATLAB读取图片时报错:“错误使用 fopen 找不到文件,确保文件存在且路径” 的原因及解决方法
- 整个人麻掉!这竟然是一家可以养老的互联网大厂...
- 宝塔面板mysql命令_宝塔面板常用命令
- java中替换的快捷键是什么_idea替换快捷键,批量处理对象的操作
- Maven实战_许晓斌
热门文章
- WEB框架研究笔记七(Spring2+struts2)
- 【Java从0到架构师】Nginx 拓展 - HTTPS支持、缓存、Http请求防盗链、限流、高可用(Keepalived)
- 那年我整理的JavaEE面试题
- 配对(套利)交易之二,符合配对规则回测
- dicom文件的后缀_dcm文件扩展名,dcm文件怎么打开?
- 90年代中国人一个月挣多少钱?一组数据带你看懂90年代消费情况
- 推荐一款神器,不用写函数的“Excel”,统计数据比透视表还牛!
- “工业4.0”下的可视化工厂建设方案 1
- go mysql es 不要分词_ElasticSearch踩坑记录-Go语言中文社区
- 东北大学c语言及程序设计题库,东北大学c语言编程试题及其答案