参考来源: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的区别分析相关推荐

  1. Jquery中attr与prop的区别

    prop()函数的结果: 1.如果有相应的属性,返回指定属性值. 2.如果没有相应的属性,返回值是空字符串. attr()函数的结果: 1.如果有相应的属性,返回指定属性值. 2.如果没有相应的属性, ...

  2. jquery 中attr和prop的区别

    在jQuery API中也有专门解释: Attributes VS. Properties 在一些特殊的情况下,attributes和properties的区别非常大.在jQuery1.6之前,.at ...

  3. 转,jquery中attr和prop的区别

    https://www.cnblogs.com/Showshare/p/different-between-attr-and-prop.html 像checkbox,radio和select这样的元素 ...

  4. jQuery中attr()和prop()方法的介绍

    1.jQuery中用attr()方法来获取和设置元素属性.attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式. attr(属性名) ...

  5. JS中attr 和 prop 的区别

    attr : 设置或返回被选元素的属性值. prop : 获取在匹配的元素集中的第一个元素的属性值. attr 和 prop 的本质 attr 是 attribute 的缩写,prop 是 prope ...

  6. 关于jQuery中.attr()和.prop()

    功能需求是这样的,两个radio:男和女,一个button:重置.启动页面默认选中男,在用户选择女之后又点击重置按钮,需要恢复到默认状态. <input type="radio&quo ...

  7. jQuery中attr和prop方法的区别

    2019独角兽企业重金招聘Python工程师标准>>> 相比attr,prop是1.6.1才新出来的,两者从中文意思理解,都是获取/设置属性的方法(attributes和proper ...

  8. jquery中attr和prop以及removeAttr和removeProp的区别

    结论:attr和prop都可以获取自定义对象的属性值,区别是attr能获取标签元素自定义属性,prop无法获取,返回undefined,它只能获取标签自带属性. removeAttr标签上的属性都可以 ...

  9. jQuery函数attr()和prop()的区别

    在jQuery中,attr()函数和prop()函数都用于设置或获取指定的属性,它们的参数和用法也几乎完全相同. 但不得不说的是,这两个函数的用处却并不相同.下面我们来详细介绍这两个函数之间的区别. ...

最新文章

  1. 100万奖金池,这不仅仅是场比赛
  2. 平衡二叉树-FHQ Treap(无旋平衡树)c/c++代码实现
  3. ICCV 2021 | 最新开源!多视角几何和注意力机制实现新视角合成
  4. vue 模仿今日头条demo
  5. vue插槽样式_Vue为什么要有插槽
  6. GNN 笔记:图上的傅里叶变换
  7. 安卓okhttp连接mysql_android中okhttp实现断点上传示例
  8. int与byte转换(四字节)
  9. oracle查询表nextval,Oracle Database 建立与查询 Sequence
  10. 《学习CSS布局》学习笔记
  11. 如何用VS2005制作Web安装程序
  12. JZOJ 1235. 洪水
  13. CentOS 7 重装mysql编译过程报错解决方法
  14. IE8 SVG Viewer下一些对象属性和方法
  15. Navicat premium注册机打不开的解决办法
  16. MATLAB读取图片时报错:“错误使用 fopen 找不到文件,确保文件存在且路径” 的原因及解决方法
  17. 整个人麻掉!这竟然是一家可以养老的互联网大厂...
  18. 宝塔面板mysql命令_宝塔面板常用命令
  19. java中替换的快捷键是什么_idea替换快捷键,批量处理对象的操作
  20. Maven实战_许晓斌

热门文章

  1. WEB框架研究笔记七(Spring2+struts2)
  2. 【Java从0到架构师】Nginx 拓展 - HTTPS支持、缓存、Http请求防盗链、限流、高可用(Keepalived)
  3. 那年我整理的JavaEE面试题
  4. 配对(套利)交易之二,符合配对规则回测
  5. dicom文件的后缀_dcm文件扩展名,dcm文件怎么打开?
  6. 90年代中国人一个月挣多少钱?一组数据带你看懂90年代消费情况
  7. 推荐一款神器,不用写函数的“Excel”,统计数据比透视表还牛!
  8. “工业4.0”下的可视化工厂建设方案 1
  9. go mysql es 不要分词_ElasticSearch踩坑记录-Go语言中文社区
  10. 东北大学c语言及程序设计题库,东北大学c语言编程试题及其答案