jQuery中prop跟attr的区别

最近在做后台管理的项目,存在下拉框、input、搜索、重置等等;点击重置的时候,把select中的默认值选中为请选择、input清空;再次发起请求的一个过程。

问题:在操作过程中,我通过attr设置select的selected属性,属性设置成功了,可并没有默认选中我想要的元素

解决办法:

  • 对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
  • 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。

$("#chk1").prop("checked") == false
$("#chk2").prop("checked") == true

如果上面使用attr方法,则会出现:

$("#chk1").attr("checked") == undefined
$("#chk2").attr("checked") == "checked"


猜你喜欢

转载自blog.csdn.net/lschange/article/details/80272345