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 相关文章推荐
JavaScript延迟加载
Mar 09 Javascript
更优雅的事件触发兼容
Oct 24 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
Jun 05 Javascript
js操作iframe父子窗体示例
May 22 Javascript
JS实现FLASH幻灯片图片切换效果的方法
Mar 04 Javascript
jQuery焦点图轮播特效代码分享(3款)
Sep 05 Javascript
移动端web滚动分页的实现方法
May 05 Javascript
详解Node.js项目APM监控之New Relic
May 12 Javascript
JS倒计时实例_天时分秒
Aug 22 Javascript
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
Feb 14 Javascript
vue如何获取自定义元素属性参数值的方法
May 14 Javascript
vue3.0 的 Composition API 的使用示例
Oct 26 Javascript
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
UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
2015/12/08 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
jQuery实现视频作为全屏幕背景
2014/12/18 Javascript
24款热门实用的jQuery插件推荐
2014/12/24 Javascript
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
2015/11/26 Javascript
简单了解Backbone.js的Model模型以及View视图的源码
2016/02/14 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
从零学习node.js之简易的网络爬虫(四)
2017/02/22 Javascript
Vue.js结合bootstrap实现分页控件
2017/03/10 Javascript
jQuery常见面试题之DOM操作详析
2017/07/05 jQuery
Express之托管静态文件的方法
2018/06/01 Javascript
js实现一个简易计算器
2020/03/30 Javascript
JS实现随机抽选获奖者
2019/11/07 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
2020/09/22 Javascript
python使用post提交数据到远程url的方法
2015/04/29 Python
Python Web编程之WSGI协议简介
2018/07/18 Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
2019/07/08 Python
python3 requests库文件上传与下载实现详解
2019/08/22 Python
在Python中字典按值排序的实现方法
2020/11/12 Python
用python批量移动文件
2021/01/14 Python
亚马逊中国官方网站:amazon.cn
2017/05/25 全球购物
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
美国椅子和沙发制造商:La-Z-Boy
2020/10/25 全球购物
环保建议书300字
2014/05/14 职场文书
银行委托书范本
2014/09/28 职场文书
现役军人家属慰问信
2015/03/24 职场文书
应聘教师自荐信
2015/03/26 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
2019新员工心得体会
2019/06/25 职场文书
如何利用map实现Nginx允许多个域名跨域
2021/03/31 Servers
【D4DJ】美少女DJ企划 动画将于明年冬季开播第2季
2022/04/11 日漫
Python安装使用Scrapy框架
2022/04/12 Python