zoukankan      html  css  js  c++  java
  • 关于jQuery中.attr()和.prop()

    功能需求是这样的,两个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值的属性,官方解释selectedIndextagNamenodeNamenodeTypeownerDocumentdefaultChecked, 以及defaultSelected 等属性需用.prop()方法。另外,看网上还有好多说“添加属性名称该属性就会生效应该使用.prop()”,本人没验证其他属性,倒是"checked"属性的确是添加就生效。所以,红色的两点应该就是.attr()和.prop()的区别所在了。

    所以,将上面click事件方法里面的代码改成下面的就OK了。

    $("input[name='sex']:first").prop("checked",true);
  • 相关阅读:
    rally测试后生成的html报告,无法正常展示
    开机自动执行的脚本
    python设计模式-命令模式
    解决docker命令行终端显示不全的问题
    ansible简单入门
    python函数的执行过程
    rally task配置文件
    python调试工具remote_pdb
    rally使用tempest进行测试
    rally测试opentack------安装部署和简单实践
  • 原文地址:https://www.cnblogs.com/axl234/p/3806264.html
Copyright © 2011-2022 走看看