关于jquery attr()与prop() 的区别

Posted fordouble

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于jquery attr()与prop() 的区别相关的知识,希望对你有一定的参考价值。

  本菜鸡最近学习用JQ,从来没用过jq得 经常出BUG,今天就出了BUG了。

  给元素绑定事件,点击全选 取消全不选。 使用的是 给按钮添加一个 change 事件,其实click 也可以,用change显得专业一些 。

  ok , 用prop() 来判断checked值为true OR false  这个没问题,问题出在使用 attr()来设置 checked,true ,

  prop() 与 attr() 还是有很大区别的,一开始用attr 恩 逻辑上没问题,初次操作正常。

  反复操作以后,虽然数据绑定上去了,按钮样式不再发生变化了,显示都是未选中的状态!

  F12查看发现checked="checked"是绑定上去了的,但是页面样式不再发生改变,换上prop(checked,true)  则能够正常改变。

  可能是因为attr 适合添加元素未有的 属性,而原有的属性就差很多,而prop()则适合原有自带的属性的修改、查询

以上是关于关于jquery attr()与prop() 的区别的主要内容,如果未能解决你的问题,请参考以下文章

jQuery中attr和prop方法的区别

关于Jquery获取和设置属性的两个方法prop()/attr()的区别。

关于jQuery表单选择中prop和attr的区别。

jquery-2.0.2 关于attr方法的问题

jquery attr与prop的区别

关于Jquery中radio的属性设置,是attr,还是prop问题