jquery 中prop()与attr()方法比较
程序员文章站
2022-07-12 21:42:39
...
Jquery 1.6+ .prop()与.attr()方法比较
今天在用JQuery的时候发现一个问题用.attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是undefined.
解决这个文章我参考了这个帖子:
http://bugs.jquery.com/ticket/9812
为什么jquery 1.6+增加了.prop()方法,因为在有些浏览器中比如说只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked"。所以,从1.6开始,jq提供新的方法“prop”来获取这些属性。
以前我们使用attr获取checked属性时返回"checked"和"",现在使用prop方法获取属性则统一返回true和false。
那么,什么时候使用attr,什么时候使用prop??
1.添加属性名称该属性就会生效应该使用prop.
2.是有true,false两个属性使用prop.
3.其他则使用attr
项目中jquery升级的时候大家要注意这点!
以下是官方建议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() ) |
√ |
推荐阅读
-
Jquery中find与each方法用法实例教程
-
JQuery中关于jquery.js与jquery.min.js的比较探讨
-
JQuery插件Style定制化方法的分析与比较_jquery
-
jquery prop的使用介绍及与attr的区别_jquery
-
jquery中eq和get的区别与使用方法_jquery
-
jquery中attr和prop的区别实例用法详解
-
关于jQuery中.attr()和.prop()的问题探讨
-
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
-
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
-
深入理解jQuery中live与bind方法的区别