利用原生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 相关文章推荐
一个多次搜索+多次传值的解决方案
Jan 20 Javascript
js或css文件后面跟参数的原因说明
Jan 09 Javascript
DOM2非标准但却支持很好的几个属性小结
Jan 21 Javascript
jQuery实现的倒计时效果实例小结
Apr 16 Javascript
Javascript类型系统之undefined和null浅析
Jul 13 Javascript
vue2.0 资源文件assets和static的区别详解
Apr 08 Javascript
javascript深拷贝、浅拷贝和循环引用深入理解
May 27 Javascript
wx-charts 微信小程序图表插件的具体使用
Aug 18 Javascript
layer实现登录弹框,登录成功后关闭弹框并调用父窗口的例子
Sep 11 Javascript
js实现图片跟随鼠标移动效果
Oct 16 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
Aug 03 Javascript
Vue登录拦截 登录后继续跳转指定页面的操作
Aug 04 Javascript
关于两个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
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
PHP学习笔记之一
2011/01/17 PHP
PHP中替换换行符的几种方法小结
2012/10/15 PHP
深入解析PHP中的(伪)多线程与多进程
2013/07/01 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
2014/06/10 PHP
Thinkphp的volist标签嵌套循环使用教程
2014/07/08 PHP
PHP实现带重试功能的curl连接示例
2016/07/28 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
19个很有用的 JavaScript库推荐
2011/06/27 Javascript
DIV+CSS+JS不间断横向滚动实现代码
2013/03/19 Javascript
多引号嵌套的变量命名的问题
2014/05/09 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
详解jQuery中的元素的属性和相关操作
2015/08/14 Javascript
详解JavaScript中this关键字的用法
2016/05/26 Javascript
JS脚本实现动态给标签控件添加事件的方法
2016/06/02 Javascript
深入浅析JavaScript中的arguments对象(强力推荐)
2016/06/03 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
2016/10/19 Javascript
BootStrap实现轮播图效果(收藏)
2016/12/30 Javascript
jQuery设置和获取select、checkbox、radio的选中值方法
2017/01/01 Javascript
axios post提交formdata的实例
2018/03/16 Javascript
如何获取TypeScript的声明文件.d.ts
2018/05/01 Javascript
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
详解HTML5中CSS外观属性
2020/09/10 HTML / CSS
FC-Moto英国:欧洲最大的摩托车服装和头盔商店之一
2019/08/25 全球购物
编辑找工作求职信范文
2013/12/16 职场文书
社团2014年植树节活动总结
2014/03/11 职场文书
小学生读书活动总结
2014/06/30 职场文书
全国爱牙日活动总结
2015/02/05 职场文书
秋季运动会加油词
2015/07/18 职场文书
军训后的感想
2015/08/07 职场文书
Pytest之测试命名规则的使用
2021/04/16 Python
Python基础之元类详解
2021/04/29 Python
pycharm 如何查看某一函数源码的快捷键
2021/05/12 Python