资讯专栏INFORMATION COLUMN

jquery中attr和prop的区别

ad6623 / 3011人阅读

摘要:今天研究前端的给固有属性加值是出现错误,搜索了下,找到了原因,就是中和的区别。下面和大家分享下在高版本的引入方法后,什么时候该用什么时候用它们两个之间有什么区别这些问题就出现了。关于它们两个的区别,网上的答案很多。

今天研究前端jquery的attr给固有属性加值是出现错误,搜索了下,找到了原因,就是:jquery中attr和prop的区别。下面和大家分享下:

在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了。

关于它们两个的区别,网上的答案很多。这里谈谈我的心得,我的心得很简单:

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

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

上面的描述也许有点模糊,举几个例子就知道了。

百度

这个例子里元素的DOM属性有“href、target和class",这些属性就是元素本身就带有的属性,也是W3C标准里就包含有这几个属性,或者说在IDE里能够智能提示出的属性,这些就叫做固有属性。处理这些属性时,建议使用prop方法。

删除

这个例子里元素的DOM属性有“href、id和action”,很明显,前两个是固有属性,而后面一个“action”属性是我们自己自定义上去的,元素本身是没有这个属性的。这种就是自定义的DOM属性。处理这些属性时,建议使用attr方法。使用prop方法取值和设置属性值时,都会返回undefined值。

再举一个例子:

是否可见
是否可见

像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.ucloud.cn/yun/85161.html

相关文章

  • jQueryattr()prop()方法一些区别理解

    摘要:后来了一番不知怎么搜索的又发现了一个和区别的一些解释。操作对象不同在中表示文档节点属性,而则表示对象属性。函数主要依赖的是对象的和两个方法。 昨天在开发的时候同事帮忙写了一小段JS代码,取数据的时候用到了以前都没用过的$(this).data(xxx)的这种形式,后来看了手册才知道在HTML5中可以对元素进行自定义属性。格式类似于data-xxx=value,然后可以用JQ中的....

    iKcamp 评论0 收藏0
  • jQueryattr()prop()区别

    摘要:需求很简单的,一个非常简单的复选框的使用。与的区别复选框设置设置自定义自定义设置类型设置类型支持类型在这里温馨提示提示一下,当我们设置这个属性时,再用获取的时候,控制提示。 问题引入 昨天接到了一个活,里面有一个小需求,在写的过程中遇到了一个小问题。虽然这个问题并不是很复杂的东西,但却是一个比较细节的问题。相信不少新手前端会遇到。下面我先描述一下我这个遇到的这个需求。 showImg(...

    mo0n1andin 评论0 收藏0
  • jqueryattr()prop()区别

    摘要:在中新加了一个方法,查看文档可以看到一句话获取在匹配的元素集中的第一个元素的属性值。这种情况适用于多选项全选和反选的情况。 在jquery1.6中新加了一个方法prop(),查看jquery文档可以看到一句话:获取在匹配的元素集中的第一个元素的属性值。 大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = disabled,checked...

    刘德刚 评论0 收藏0
  • jQuery attrprop 区别

    摘要:先提出问题对于这类值是的属性,用的或方法进行读取或设置值是有区别的。因此,如果你想知道文本框的当前值,则读取。的值并不会随着的状态而作出相应改变,而会。为对象设置值的安全做法避免内存泄漏是使用。参考翻译地址的与的区别 先提出问题:对于 checked 这类值是 true/false 的属性,用 jQuery 的 attr 或 prop 方法进行 读取或设置值是有区别的。 在看 jQue...

    kk_miles 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<