利用原生js和jQuery实现单选框的勾选和取消操作的方法


Posted in Javascript onSeptember 04, 2016

根据以下的Demo,大概就可以看的明白

Demo:

<html>
<head>
<script src='jquery-1.9.1.min.js'></script>
<script>
  window.onload = function(){
    var dom_a = document.getElementById('a1');
    var dom_b = document.getElementById("b1");
    //alert("A="+dom_a.value+" || B="+dom_b.value);
  }

  //以下开始操作radio的取消和勾选
  //原生js操作
  function fn1(){
    var dom_a = document.getElementById('a1');
    var dom_b = document.getElementById("b1");
    //勾选
    dom_a.checked = true;
    //dom_a.checked = 'false';
    //dom_a.checked = 123;
    //取消勾选
    dom_b.checked = '';
    //dom_b.checked = false;//取消勾选
    //dom_b.checked = null;//取消勾选
    //dom_b.checked = undefined;//取消勾选

  }
  //利用jQuery操作
  function fn2(){
    var jQ_a = $('#a2');
    var jQ_b = $("#b2");
    //勾选
    jQ_a.prop('checked','abc');
    //jQ_a.prop('checked','123');
    //jQ_a.prop('checked','true');
    //jQ_a.prop('checked',true);
    //jQ_a.prop('checked',123);//数字可以
    //jQ_a.prop('checked',-1);
    //jQ_a.prop('checked',abc);//会报错,abc未定义 {所以预猜测checked只要有已定义的值即可实现选中(undefined代表未定义)}
    //取消勾选
    jQ_b.prop('checked','');
    //jQ_b.prop('checked',false);
    //jQ_b.prop('checked',null);
    //jQ_b.prop('checked',undefined);//没有任何效果,不会报错
  }

</script>
<style>
  .own{
    border:solid 2px red;
    padding:20px 5px 20px 40px;
    width:300px;
    margin:80 0 0 500;
  }
</style>
<head>
<body>
<!--
  通过实验得知:
    初始化让单选框选中有4种方法可以实现:
    1、checked
    2、checked='checked'(建议用此方法,此方法对浏览器可以有很好的兼容性)
    3、checked='true'
    4、checked=true
    小提示:通过给checked属性复制,只要checked存在,
      赋予任何值都可以初始化选中(eg:checked='aaa' 或 checked='false')
      不赋值都可以实现初始化选中
    测试成功案例:
      [checked],[checked='checked'],[checked='true'],[checked=true],[checked='aaa'],[checked='false'],
      [checked='undefined'],[checked=false],[checked=null],[checked=undefined],[checked=''],[checked='-1']

    当有多个被选中时,最后选中的单选框为最后一个
-->

<div class='own'>
<label>A1</label><input id='a1' type='radio' value='1' name='test1' checked />
<label>B1</label><input id='b1' type='radio' value='2' name='test1' checked='checked'/>
<label>C1</label><input id='c1' type='radio' value='3' name='test1' checked='true' />
<label>D1</label><input id='d1' type='radio' value='4' name='test1' checked=true />
<button onclick='fn1()'>测试点击一下</button>
</div>

<div class='own'>
<label>A2</label><input id='a2' type='radio' value='1' name='test2' />
<label>B2</label><input id='b2' type='radio' value='2' name='test2' checked/>
<label>C2</label><input id='c2' type='radio' value='3' name='test2' />
<label>D2</label><input id='d2' type='radio' value='4' name='test2' />
<button onclick='fn2()'>测试点击一下</button>
</div>

</body>
</html>

以上这篇利用原生js和jQuery实现单选框的勾选和取消操作的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
跟我学习javascript的call(),apply(),bind()与回调
Nov 16 Javascript
BootStrap智能表单实战系列(七)验证的支持
Jun 13 Javascript
Javascript动画效果(1)
Oct 11 Javascript
JS常用算法实现代码
Nov 14 Javascript
jquery动态添加带有样式的HTML标签元素方法
Feb 24 jQuery
浅谈angular4.0中路由传递参数、获取参数最nice的写法
Mar 12 Javascript
vue短信验证性能优化如何写入localstorage中
Apr 25 Javascript
Vue三层嵌套路由的示例代码
May 05 Javascript
js 实现watch监听数据变化的代码
Oct 13 Javascript
vue从零实现一个消息通知组件的方法详解
Mar 16 Javascript
js简单粗暴的发布订阅示例代码
Jan 23 Javascript
Vue过滤器(filter)实现及应用场景详解
Jun 15 Vue.js
关于两个jQuery(js)特效冲突的bug的解决办法
Sep 04 #Javascript
DOM操作原生js 的bug,使用jQuery 可以消除的解决方法
Sep 04 #Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
Sep 03 #Javascript
JavaScript 冒泡排序和选择排序的实现代码
Sep 03 #Javascript
浅析$(function) ready和onload 的区别
Sep 03 #Javascript
详解Javascript中prototype属性(推荐)
Sep 03 #Javascript
jQuery基本选择器之标签名选择器
Sep 03 #Javascript
You might like
星际争霸任务指南——神族
2020/03/04 星际争霸
vBulletin Forum 2.3.xx SQL Injection
2006/10/09 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
CodeIgniter删除和设置Cookie的方法
2015/04/07 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
JS中不为人知的五种声明Number的方式简要概述
2013/02/22 Javascript
解决jquery实现的radio重新选中的问题
2015/07/03 Javascript
javascript与jquery中的this关键字用法实例分析
2015/12/24 Javascript
JavaScript常用判断写法大全(推荐)
2016/05/30 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
js调用设备摄像头的方法
2018/07/19 Javascript
vue实现拖拽效果
2019/12/23 Javascript
[00:20]DOTA2荣耀之路7:-ah fu-抢盾
2018/05/31 DOTA
仅利用30行Python代码来展示X算法
2015/04/01 Python
Python实现配置文件备份的方法
2015/07/30 Python
用Python写一个无界面的2048小游戏
2016/05/24 Python
python判断完全平方数的方法
2018/11/13 Python
python模拟登陆,用session维持回话的实例
2018/12/27 Python
对python判断是否回文数的实例详解
2019/02/08 Python
基于OpenCV python3实现证件照换背景的方法
2019/03/22 Python
Python参数解析模块sys、getopt、argparse使用与对比分析
2019/04/02 Python
pandas dataframe 中的explode函数用法详解
2020/05/18 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
2020/08/24 Python
Django缓存Cache使用详解
2020/11/30 Python
工程造价专业大学生自荐信
2013/10/01 职场文书
毕业生求职简历的自我评价
2013/10/07 职场文书
预备党员2014全国两会学习心得体会
2014/03/10 职场文书
12.4法制宣传日标语
2014/10/08 职场文书
乡镇群众路线专项整治方案
2014/11/03 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
街道办残联2016年助残日活动总结
2016/04/01 职场文书
Sentry的安装、配置、使用教程(Sentry日志手机系统)
2022/07/23 Python