.attr( ) 可以设置元素的属性(也就是给元素新增加一个原来并不存在的属性)也可以获取元素的本来就有的属性以及额外设置的属性。如果要获取的属性没有设置,那么获取到的结果是 undefined; 
.prop( )可以设置元素的属性(HTML固有的属性,可以给元素添加属性)也可以获取元素的固有的属性值,如果是额外设置的其他属性,则无法通过prop( )获取。 

.css() 只能获取是 style 里面的属性值; 
注意语法:获取style样式属性值:对象.css(“属性名”),设置style样式属性值:对象.css(“属性名”),设置style样式属性值:对象.css(“属性名”,“属性值”)双引号必不可少

对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。

对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

<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"

总结: 
1 如果想要通过attr()获取属性值,那么该属性必须显式的设置在HTML代码中或者通过attr新增的属性才能被获取到,如果没有设置,那么将返回undefined 
2 如果通过prop()获取属性值,那么该属性只能是HTMl的固有属性,无论是否显式的设置,都可以获取其对应的属性值,如果是额外增加的属性,那么将无法获取。

转载自:https://www.cnblogs.com/lijianda/p/9562064.html

最新文章

  1. centos 7.1 apache 源码编译安装
  2. Oracle过程及函数的参数模式,In、out、in out模式
  3. ACM: hdu 1811 Rank of Tetris - 拓扑排序-并查集-离线
  4. java-cef系列视频第三集:添加flash支持
  5. Git版本控制工具(一)----git的安装及创建版本库
  6. radioButton
  7. 【转】POP3、SMTP和IMAP之间的区别和联系
  8. c89和c99的区别【转】
  9. 深入研究Clang(三) libclang
  10. POJ 3377 Ferry Lanes
  11. [Xcode使用 - 2] 设置APP图标和启动画面
  12. Getting Started with Testing ——开始单元测试
  13. CA认证
  14. HDU4403(暴搜)
  15. 关于github中的README.md文件
  16. kubernetes学习14—Dashboard搭建和认证
  17. bat给文件追加换行内容
  18. [RUNOOB]C++继承
  19. 第9章 Linux进程和信号超详细分析
  20. P1558 色板游戏 线段树+二进制状压

热门文章

  1. 使用原生js 实现点击消失效果
  2. 基于Ajax技术的前后端Json数据交互方式实现
  3. 【SQL-历史执行语句查询】 查询对数据库执行了哪些SQL
  4. prevAll([expr]) 查找当前元素之前所有的同辈元素
  5. Splay - restudy
  6. 第67节:Java中的JDBC运用
  7. bzoj4152
  8. codeforces#999 E. Reachability from the Capital(图论加边)
  9. JSON数据的缓存
  10. ubuntu 文件管理器 异常 强制关闭