checkbox设置复选框的只读效果不让用户勾选


Posted in Javascript onAugust 12, 2013

在Web开发中,有时候需要显示一些复选框(checkbox),表明这个地方是可以进行勾选操作的,但是有时候是只想告知用户"这个地方是可以进行勾选操作的"而不想让用户在此处勾选(比如在信息展示页面),这时候就需要将复选框设置成只读的效果。

提到只读,很容易想到使用readonly属性,但是对于复选框来说,这个属性和期望得到的效果是有差别的。原因在于readonly属性关联的是页面元素的value属性(例如textbox,设置了readonly就不能修改输入框的文本内容),而复选框的勾选/取消并不改变其value属性,改变的只是一个checked状态。所以对于checkbox来说,设置了readonly,仍然是可以勾选/取消的。效果如下:

option a                    option b                    option c                option aoption boption c               

和readonly类似的,还有一个disabled属性,这个属性的作用是设置页面元素为不可用,即不可进行任何交互操作(包括不可修改value属性、不可修改checked状态等)。效果如下:

               
                    option a                    option b                    option c                option aoption boption c               

从上面我们可以看到,无论是readonly还是disabled,都没有实现我们期望的效果。既然直接实现不了,那么我们可以变通一下,模拟实现。代码如下:

               
Javascript 相关文章推荐
再谈IE中Flash控件的自动激活 ObjectWrap
Mar 09 Javascript
javascript 隐藏/显示指定的区域附HTML元素【legend】用法
Mar 05 Javascript
客户端js判断文件类型和文件大小即限制上传大小
Nov 20 Javascript
javascript创建createXmlHttpRequest对象示例代码
Feb 10 Javascript
为jquery的ajaxfileupload增加附加参数的方法
Mar 04 Javascript
Easyui 之 Treegrid 笔记
Apr 29 Javascript
ES6字符串模板,剩余参数,默认参数功能与用法示例
Apr 06 Javascript
JS脚本加载后执行相应回调函数的操作方法
Feb 28 Javascript
如何在js代码中消灭for循环实例详解
Jul 29 Javascript
对Layer弹窗使用及返回数据接收的实例详解
Sep 26 Javascript
JS PHP字符串截取函数实现原理解析
Aug 29 Javascript
Vue基本指令实例图文讲解
Feb 25 Vue.js
Jquery easyui 下loaing效果示例代码
Aug 12 #Javascript
多次注册事件会导致一个事件被触发多次的解决方法
Aug 12 #Javascript
JS获取图片实际宽高及根据图片大小进行自适应
Aug 11 #Javascript
Javascript合并表格中具有相同内容单元格示例
Aug 11 #Javascript
js获取php变量的实现代码
Aug 10 #Javascript
如何使用Jquery获取Form表单中被选中的radio值
Aug 09 #Javascript
jquery对象和DOM对象的区别介绍
Aug 09 #Javascript
You might like
PHP 图片水印类代码
2012/08/27 PHP
PHP生成短网址方法汇总
2016/07/12 PHP
PHP 7.4 新语法之箭头函数实例详解
2019/05/09 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
firefox下对ajax的onreadystatechange的支持情况分析
2009/12/14 Javascript
jQueryUI如何自定义组件实现代码
2010/11/14 Javascript
浅析jQuery的链式调用之each函数
2010/12/03 Javascript
js日期时间补零的小例子
2013/03/05 Javascript
JS正则表达式大全(整理详细且实用)
2013/11/14 Javascript
浅析tr的隐藏和显示问题
2014/03/05 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
javascript实现避免页面按钮重复提交
2015/01/08 Javascript
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
2015/11/09 Javascript
详述JavaScript实现继承的几种方式(推荐)
2016/03/22 Javascript
jQuery实现web页面樱花坠落的特效
2017/06/01 jQuery
Angularjs Promise实例详解
2018/03/15 Javascript
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
2019/06/06 jQuery
JsonProperty 的使用方法详解
2019/10/11 Javascript
vue+elementUI实现简单日历功能
2020/09/24 Javascript
[01:27:43]VGJ.S vs TNC Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
python黑魔法之编码转换
2016/01/25 Python
python基于隐马尔可夫模型实现中文拼音输入
2016/04/01 Python
详解python3实现的web端json通信协议
2016/12/29 Python
Django视图和URL配置详解
2018/01/31 Python
Python面向对象程序设计类的多态用法详解
2019/04/12 Python
python实现接口并发测试脚本
2019/06/25 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
安装python依赖包psycopg2来调用postgresql的操作
2021/01/01 Python
银行求职推荐信范文
2013/11/30 职场文书
英文导游欢迎词
2014/01/11 职场文书
程序员求职信
2014/04/16 职场文书
基层党建工作汇报材料
2014/08/15 职场文书
学前班教学反思
2016/02/24 职场文书
python unittest单元测试的步骤分析
2021/08/02 Python
移除Selenium中window.navigator.webdriver值
2022/06/10 Python