关于jQuery中.attr()和.prop()
2014-06-24 15:54
423 查看
功能需求是这样的,两个radio:男和女,一个button:重置。启动页面默认选中男,在用户选择女之后又点击重置按钮,需要恢复到默认状态。
我的js代码是这样的:
结果就是开头提到的样子,问了几个人都说不清楚,后来查了API后知道在jQuery1.6+的版本中添加了.prop()的方法,貌似和.attr()没什么区别,都可以用来获取和设置属性值。后来又了解到.prop()方法适用于Boolean值的属性,官方解释
所以,将上面click事件方法里面的代码改成下面的就OK了。
<input type="radio" id="hRdMale" checked="checked" name="sex" value="male" /><label for="hRdMale">男</label> <input type="radio" id="hRdFemale" name="sex" value="female" /><label for="hRdFemale">女</label> <button id="reSet">重置</button>
我的js代码是这样的:
$("#reSet").click(function() { $("input[name='sex']:first").attr("checked",true); });
结果就是开头提到的样子,问了几个人都说不清楚,后来查了API后知道在jQuery1.6+的版本中添加了.prop()的方法,貌似和.attr()没什么区别,都可以用来获取和设置属性值。后来又了解到.prop()方法适用于Boolean值的属性,官方解释
selectedIndex,
tagName,
nodeName,
nodeType,
ownerDocument,
defaultChecked, 以及
defaultSelected等属性需用.prop()方法。另外,看网上还有好多说“添加属性名称该属性就会生效应该使用.prop()”,本人没验证其他属性,倒是"checked"属性的确是添加就生效。所以,红色的两点应该就是.attr()和.prop()的区别所在了。
所以,将上面click事件方法里面的代码改成下面的就OK了。
$("input[name='sex']:first").prop("checked",true);
相关文章推荐
- 关于面试jquery中的 .attr() 和 .prop()的区别联系
- 关于jQuery中的attr()与prop()的区别与用法
- attr prop jquery关于获取DOM属性值的两个函数
- 关于jquery里面prop和attr的带示例详细对比,深度理解
- 关于jQuery中.attr()和.prop()的问题探讨
- 关于jQuery中的attr和prop
- 关于jQuery中.attr()和.prop()的问题
- 关于jquery中attr()和prop()方法的区别
- 关于jQuery中attr(),prop()的使用
- 关于jQuery中.attr()和.prop()的问题探讨
- 关于jQuery中.attr()和.prop()的问题探讨
- jquery 获取自定义属性(attr和prop)的实现代码
- jQuery1.9.1--attr,prop与val方法源码分析
- jquery中prop()方法和attr()方法的区别
- jquery中prop()方法和attr()方法的区别(转)
- jquery prop and attr
- jquery中prop()方法和attr()方法的区别
- jquery中prop()方法和attr()方法的区别
- jQuery中的attr()和prop()
- jquery获取自定义属性(attr和prop)实例介绍