关于jQuery中.attr()和.prop()的问题探讨


Posted in Javascript onSeptember 06, 2013

话说写了几句代码在ie8上能正常运行,chrome和ff却不行,朋友说这就是RP啊,郁闷!

其实功能需求是这样的,两个radio:男和女,一个button:重置。启动页面默认选中男,在用户选择女之后又点击重置按钮,需要恢复到默认状态。

<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);
Javascript 相关文章推荐
jQuery 方法大全方便学习参考
Feb 25 Javascript
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
Apr 15 Javascript
javascript 设为首页与加入收藏兼容多浏览器代码
Jan 11 Javascript
js数组去重的常用方法总结
Jan 24 Javascript
JavaScript给url网址进行encode编码的方法
Mar 18 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
Aug 28 Javascript
jQuery实现鼠标悬停3d菜单展开动画效果
Jan 19 Javascript
html5 canvas 详细使用教程
Jan 20 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
Sep 02 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
Aug 31 Javascript
JS严格模式原理与用法实例分析
Apr 27 Javascript
ant design中upload组件上传大文件,显示进度条进度的实例
Oct 29 Javascript
正负小数点后两位浮点数实现原理及代码
Sep 06 #Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
Sep 06 #Javascript
jquery实现metro效果示例代码
Sep 06 #Javascript
JS去除数组重复值的五种不同方法
Sep 06 #Javascript
JavaScript判断密码强度(自写代码)
Sep 06 #Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
Sep 06 #Javascript
让网页跳转到指定位置的jquery代码非书签
Sep 06 #Javascript
You might like
乱谈我对耳机、音箱的感受
2021/03/02 无线电
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
php set_magic_quotes_runtime() 函数过时解决方法
2010/07/08 PHP
PHP计算加权平均数的方法
2015/07/16 PHP
PHP响应post请求上传文件的方法
2015/12/17 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
php实现数字补零的方法总结
2018/09/12 PHP
JS动画效果代码3
2008/04/03 Javascript
Javascript中Event属性搜集整理
2013/09/17 Javascript
JS正则验证邮箱的格式详细介绍
2013/11/19 Javascript
jQuery 隐藏和显示 input 默认值示例
2014/06/03 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
jQuery+ajax实现无刷新级联菜单示例
2015/05/21 Javascript
JS获取input file绝对路径的方法(推荐)
2016/08/02 Javascript
移动端js触摸事件详解
2016/09/18 Javascript
JavaScript中this的用法及this在不同应用场景的作用解析
2017/04/13 Javascript
jQuery简单绑定单个事件的方法示例
2017/06/10 jQuery
vue-router实现组件间的跳转(参数传递)
2017/11/07 Javascript
使用puppeteer破解极验的滑动验证码
2018/02/24 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
Vue项目接入Paypal实现示例详解
2020/06/04 Javascript
JavaScript canvas实现文字时钟
2021/01/10 Javascript
Python中endswith()函数的基本使用
2015/04/07 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
Python面向对象类编写细节分析【类,方法,继承,超类,接口等】
2019/01/05 Python
树莓派极简安装OpenCv的方法步骤
2019/10/10 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
2020/04/29 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
初中三好学生事迹材料
2014/01/13 职场文书
海飞丝的广告词
2014/03/20 职场文书
韩语专业职业生涯规划范文:成功之路就在我们脚下
2014/09/11 职场文书
家电创业计划书
2019/08/05 职场文书
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python
Python Matplotlib绘制动画的代码详解
2022/05/30 Python