0
点赞
收藏
分享

微信扫一扫

jquery中attr和prop的区别

phpworkerman 2022-03-12 阅读 83
jquery

一,获取属性的区别

● attr() 操作标签上的属性
● prop() 操作Boolean类型的属性和有特性(class id name)的属性

attr可以操作HTML标签中的属性,不管是固有属性,还是添加的自定义属性。都可以通过attr来设置。

prop同样可以操作HTML中的固有属性,但对于自定义属性便无能为力了

下图可见
在这里插入图片描述
对于标签的固有属性,建议用prop方法。 如 id,class,width; 获取标签属性。

对于标签的自定义属性,建议使用attr方法。

二,获取属性值为boolean类型的属性时的区别。

1.当多选框未被选择时,attr和prop获取到的属性值如下
在这里插入图片描述

2.当多选框被选择时,attr和prop获取到的属性值如下

注意:只要input中出行了checked不管其值设置为何,也不管是否赋值,只要出行,即为选中状态

在这里插入图片描述

当checked都设置了值时,获取到的又是什么呢

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

从上面几张结果图不难发现:
attr只能判断checked是否存在;无法判断选择框是否为选中状态或未选中状态

prop可以准确的判断出多选框的选择状态

三,动态设置属性

在这里插入图片描述

可以看出如果要动态添加一个新的属性,需要利用attr方法,使用prop方法是无效的。如 $(“.2”).prop(“box”,”111”),明显是添加失败的。

总结:对于自定义属性的操作,使用attr方法,对于固有属性两者看情况使用,对于属性值是Boolean的方法,使用prop方法

举报

相关推荐

0 条评论