jQuery中attr()和prop()在修改checked属性时的区别_jquery
在做复选框全选按钮的时候,出现了一个问题,使用语句$.attr('checked',true),将复选框的属性改为被选中,在chrome浏览器中第一次点击有效后面就不行了,IE8倒是没有问题。
百度了很久找到原因是HTML的属性分为attribute和property,暂且将后者称为特性。
checked属性即分为attribute->checked,和property->true,false。
对于一个checkbox,若未定义checked="checked",alert($.attr("checked")) 的结果是undefined。若已定义则结果是checked。attribute并不随着checkbox的状态变化而改变。
使用prop($.attr("checked"))的话输出则分别为false和true。property则随其变化而变化。
所以在修改checked属性时要使用prop()。prop()在jQuery1.6版本后新增。
网上关于其他类似属性的图表:
另外关于在IE9之前版本中,如果property没有在DOM元素被移除之前删除,使用.prop()方法设置DOM元素property(简单类型除外:number、string、boolean)的值会导致内存泄露。为了安全的设置DOM对象的值,避免内存泄露,可以使用.data()方法。 目前尚未遇到,先记在这里。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)
![如何解决'[Vue warn]: Missing required prop”错误](https://img.php.cn/upload/article/000/887/227/169304743965914.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
如何解决“[Vuewarn]:Missingrequiredprop”错误在开发Vue应用程序时,有时会遇到一个常见的错误信息:“[Vuewarn]:Missingrequiredprop”。这个错误通常指的是在组件中缺少必需的属性值,导致组件无法正常渲染。解决这个问题的方法很简单,我们可以通过一些技巧和规范来避免和处理这个错误。以下是一些解
![解决'[Vue warn]: Invalid prop: invalid value”错误的方法](https://img.php.cn/upload/article/000/465/014/169294628931912.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
解决“[Vuewarn]:Invalidprop:invalidvalue”错误的方法在使用Vue.js开发应用程序时,我们经常会遇到一些错误和警告。其中一个常见的错误是“[Vuewarn]:Invalidprop:invalidvalue”。这个错误通常发生在我们尝试将无效的值传递给Vue组件的属性时。在本文中,我们将深入探讨该错误的原
![解决'[Vue warn]: Invalid prop: custom validator”错误的方法](https://img.php.cn/upload/article/000/000/164/169254319231018.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
解决“[Vuewarn]:Invalidprop:customvalidator”错误的方法在使用Vue开发过程中,我们时常会遇到一些警告和错误信息。其中一个常见的错误信息就是“[Vuewarn]:Invalidprop:customvalidator”。这个错误信息出现的原因是因为我们在使用自定义验证器函数时,未能正确地验证传递给组件
![如何解决'[Vue warn]: Invalid prop: type check”错误](https://img.php.cn/upload/article/000/887/227/169306085649427.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
如何解决“[Vuewarn]:Invalidprop:typecheck”错误Vue.js是一款流行的JavaScript框架,用于构建用户界面。在使用Vue.js开发应用程序时,我们有时会遇到一些错误信息,其中之一是“[Vuewarn]:Invalidprop:typecheck”。这个错误通常是由于我们在组件中错误使用了属性
![如何处理'[Vue warn]: Avoid mutating a prop directly”错误](https://img.php.cn/upload/article/000/465/014/169224194948720.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
如何处理“[Vuewarn]:Avoidmutatingapropdirectly”错误当使用Vue.js开发Web应用程序时,我们经常会遇到一些警告或错误。其中一个常见的警告是“[Vuewarn]:Avoidmutatingapropdirectly”,这意味着我们在组件中直接修改了一个被父组件传递的属性(prop)。在本文中,我们

Vue组件通讯中的多层级传递方案比较Vue是一款非常受欢迎的前端框架,它提供了一种组件化的开发方式,通过组件的嵌套和通讯,实现了复杂应用的开发。在实际开发中,组件之间的通讯常常是一个重要的问题。当组件之间存在多层级关系时,如何高效地传递数据成为了开发者需要思考的问题。本文将介绍几种常见的多层级组件通讯方案,并对它们进行比较。使用props和$emitVue提
![解决'[Vue warn]: Avoid mutating a prop directly”错误的方法](https://img.php.cn/upload/article/000/465/014/169226406590115.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
解决“[Vuewarn]:Avoidmutatingapropdirectly”错误的方法在使用Vue.js开发项目时,我们可能会遇到一个常见的警告信息:“[Vuewarn]:Avoidmutatingapropdirectly”。这个警告信息的意思是我们不应该直接改变一个props属性的值,而是应该通过触发事件,让父组件去改变pro
![解决'[Vue warn]: Invalid prop: update value”错误的方法](https://img.php.cn/upload/article/000/465/014/169305238381644.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
解决“[Vuewarn]:Invalidprop:updatevalue”错误的方法在Vue开发中,我们经常会遇到“[Vuewarn]:Invalidprop:updatevalue”错误。这个错误通常是由于父组件向子组件传递了一个无效的值引起的。虽然这个错误是Vue的警告而不是致命错误,但还是应该及时解决,以保证程序的健壮性。本文将介绍
