checkbox只有两种值:选中(checked)或未选中(unchecked)。它可以有任何值,但是表单提交时checkbox的值只能是checked或unchecked。它的默认值是unchecked,你可以在HTML中这样控制它:

<!-- Default to unchecked -->
<input type="checkbox"> <!-- Default to checked, XHTML -->
<input type="checkbox" checked="checked" /> <!-- Default to checked, HTML5 -->
<input type="checkbox" checked>

视觉上,checkbox有三种状态:checked、unchecked、indeterminate(不确定的)。看起来就像这样子:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAIAAABL1vtsAAAA80lEQVQ4je3TzU/CMBjHcf7/g/wnmiiJIigBFY2wCNrCpB2leyl9zZblGVc9GDhwkC67Gb/5Xfs5PW19Na71T/xGnLXbPjtBwKm8iPOr7tEuOred7l3vfliDmLzhw2YfIQ4pidjw4ak2EcwX73gVknXEeJyk4+eXGkQwX87QJ1oSEjEeJ5kQUsppEPgSl9d9HNIVZRueSCmttc455xzCC1/ipjeIGE+zTGud53m5j0ZrX6I/GCVpppRyzpVlCQBVVQEAj2NfYvQ4/nlfFAUA7PYJIXyJ18kUIUwI3XAutlttjLHWGKuU9iWaXmfTP1K3P0N8AxNtPnBtvXFFAAAAAElFTkSuQmCC" alt="" />aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAVCAIAAADTi7lxAAABR0lEQVQ4je3TzUsCQRgGcP+4wszugZgfUAQdggiyW7cuRYaYm4c9RIlQYEGH0gqLKFw/WBeapXRddam11V0pnRlmutRhLx46OOKhQw/P+QcvPK/je0xx/EOjQzvh8DAdCoK/hRBCKcUYQwgZoNR5erBCscwnb0ObJ0r9FSHEBhVEYLdYlq3u5+wSP+GJpLNljPEoUEmSG5p+eilOeiILoUSr9c58Gnip1bU38Kz0+tC3cuD0Rq/v5aqisEEPQkkQa4epnNXtZu6AyxebX0sQQgCQ2SC10VzeOHZ6o+KTtriedAe4iyzAGCs1lQ0qiZLaNKbm9lz+mDvABVePCP2CEDY1jQ16zOXb5sdW/Graz80E98/Skj0iXdfZoHyhWKlU65qxHc/s8je9PjYtq9MxDaPNBtlBCFFKCSEIocGVDwuN59dY8/egH9PmXvnWgOrSAAAAAElFTkSuQmCC" alt="" />aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAIAAAAf7rriAAABPklEQVQ4jWN49vY92YhhEGju6+8nBuHU/IUQIKBZM6lXK6lPK6lPK6lXM7FHI6FLI65dPbpFLbKBKM31J55UH35Yuu9u3vabGesvJyw/Ezn3iEpYDRGaE7urDz3QX3FVf9llvSUXdOef1p55NGDSbuWgMsKaNeI7S3bf0ltyUXfROZ25J7WnH9KcuNu9baOCTx5hzeqxrbmbr+jMO6k984jW5H0avdtVW9fZVS6Tc0slrFktqjFt5WmtKfs1+naotW9QqV+uVD7fJHuWtEMMYc0qodWxcw+pd25WaVylVLFAPn+aXGa/TkK/pHUoYc3KgaWhk3b4tK1zqVpinTfTKHWyTny/amQPUZoV/QrlPbNkXRKl7CIlrUMlrUMlrUIlrUKJ0kx+CiM/bVOUq0hCT9+8e/rmHcman755B2cAACi1cO9azQ9oAAAAAElFTkSuQmCC" alt="" />

对于indeterminate状态的checkbox需要注意的是:你无法在HTML中设置checkbox的状态为indeterminate。因为HTML中没有indeterminate这个属性,你可以通过Javascript脚本来设置它

var checkbox = document.getElementById("reyo-checkbox");
checkbox.indeterminate = true;

或者通过jQuery来设置

$("#reyo-checkbox").prop("indeterminate", true); // prop is jQuery 1.6+
$("#reyo-checkbox").attr("indeterminate", true);
$("#reyo-checkbox").prop("indeterminate", true);
两种都可以,不过新版jquery推荐第二种,两个在其他方面都差不多,我发现的唯一不同就是在checkbox上的时候,需要用prop,不然IE浏览器会不兼容

checkbox的indeterminate状态仅仅是视觉上的,它的值仍然只有checked或unchecked,这意味着indeterminate状态的checkbox的真正价值只是在用户界面上看起来更友好!来看一下我们实际应用的效果:

checkbox的三种状态处理的更多相关文章

  1. checkbox,三种状态设置

    多选按钮的  选中.未选中.半选中(常用于子项有选中,未全选) <input id="ckeckbox" type="checkbox"> $('# ...

  2. WPF中CheckBox三种状态打勾打叉和滑动效果

    本文分为两个demo, 第一个demo实现checkBox的打叉或打勾的效果: 第二个demo部分实现checkBox的滑动效果. Demo1: wpf的CheckBox支持三种状态,但是美中不足的是 ...

  3. 实现CheckBox的三种选中状态(全选、半选、不选)在GridView中模拟树形的功能

    度娘了很多帖子,只说三种状态要用图片替换来做,但没找到有用的例子,被逼自己写了一个 三方控件肯定是很多的,如jstree,可以直接用 由于公司的UDS限制,不能上传图片,只能文字说明了. 就是要在gr ...

  4. 【翻译】checkbox的第三种状态

    checkbox只有两种值:选中(checked)或未选中(unchecked).它可以有任何值,但是表单提交时checkbox的值只能是checked或unchecked.它的默认值是uncheck ...

  5. 让DuiLib CheckBox支持全选、全不选、非全选三种状态

    原文 https://blog.csdn.net/EveyX/article/details/38433783 DuiLib官方库中的Checkbox只有Checked和Uncheck两种状态,但我们 ...

  6. Hibernate 系列 07 - Hibernate中Java对象的三种状态

    引导目录: Hibernate 系列教程 目录 1. Java对象的三种状态 当应用通过调用Hibernate API与框架发生交互时,需要从持久化的角度关注应用对象的生命周期. 持久化声明周期是Hi ...

  7. hibernate三种状态

    转自:http://www.cnblogs.com/xiaoluo501395377/p/3380270.html 学过hibernate的人都可能都知道hibernate有三种状态,transien ...

  8. Hibernate的三种状态及对象生命周期

        理解Hibernate的三种状态,更利于理解Hibernate的运行机制,这些可以让你在开发中对疑点问题的定位产生关键性的帮助. 三种状态 临时状态(Transient):在通过new关键字, ...

  9. hibernate学习笔记之三 持久化的三种状态

    Hibernate持久化对象有3中状态,瞬时对象(transientObjects),持久化对象(persistentObjects),离线对象(detachedObjects) 下图显示持久化三种状 ...

随机推荐

  1. unreal3对象属性自动从配置文件中加载的机制

    unrealscript中有两个与属性自动配置相关的关键字: config/globalconfig 当把它们应用于属性时,对象在创建后,该属性的初始值会被自动设置为相对应ini文件中的值. 举例来说 ...

  2. 20145225《Java程序设计》 实验三 "敏捷开发与XP实践"

    20145225<Java程序设计> 实验三 "敏捷开发与XP实践" 实验报告 实验内容 使用 git 上传代码 使用 git 相互更改代码 实现代码的重载 git 上 ...

  3. MySQL双机热备份

    系统: CentOS release 6.6 (Final) MySQL: mysql  Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) ...

  4. mysql主主复制(双主复制)配置步骤

    以前我们介绍的都是主从复制,这里给各位介绍一个双主复制了,下面都希望两个主服务器数据自动复制的话可参考一下此文章.   MySQL主主复制结构区别于主从复制结构.在主主复制结构中,两台服务器的任何一台 ...

  5. .Net中的Debug模式和Release模式

    1.Debug模式和Release模式 在vs中,运行程序有两种模式:Debug和Release 在bin目录下也会生成对应的文件夹,用于存放生成的dll等文件,这两种模式的区别如下: Debug:用 ...

  6. BZOJ3174 Tjoi2013 拯救小矮人(贪心+DP)

    传送门 Description 一群小矮人掉进了一个很深的陷阱里,由于太矮爬不上来,于是他们决定搭一个人梯.即:一个小矮人站在另一小矮人的 肩膀上,知道最顶端的小矮人伸直胳膊可以碰到陷阱口.对于每一个 ...

  7. 第七天:JS内置对象-String字符串对象

    1.String对象  String对象用于处理已有的字符串 字符串可以使用双引号或单引号 String对象有一些常用的方法和属性,例如length 示例代码: <!DOCTYPE html&g ...

  8. python学习笔记:Day01

    一.python 简介 1.  python是Guido van Rossum在1989年圣诞节期间,为了打发无聊的假期而编写的一个编程语言   2.  pyhton主要应用于数据分析.组件集成.网络 ...

  9. jQuery插件之验证控件jquery.validate.js

    今天学习一下jQuery.Validate插件,为便于日后翻阅查看和广大博客园园友共享,特记于此. 本博客转载自:jQuery Validate jQuery Validate 插件为表单提供了强大的 ...

  10. 设计模式之美:Factory Method(工厂方法)

    索引 别名 意图 结构 参与者 适用性 缺点 效果 相关模式 命名约定 实现 实现方式(一):Creator 类是一个抽象类并且不提供它所声明的工厂方法的实现. 实现方式(二):Creator 类是一 ...