http://blog.csdn.net/yangdengfeng2003/archive/2007/05/05/1597399.aspx
我们在使用Windows XP的文件夹属性对话框时,会发现文件夹的Attributes分类里的Read-only和Hidden选项有时不是完全的checked或unchecked状态,而常常是一种虽然已被打勾但背景又是灰色的状态。其实这种不确定的CheckBox状态Web中也是可以表现的。
在Web页面中,我们可以使用<input id="chkb" type="CheckBox">来得到一个CheckBox控件。这个控件最常见的形式就是checked(被打上一个勾)或unchecked状态,我们可是使用鼠标点击来轻松的切换这两个状态,同时也可以使用脚本语言来改变它们的状态,比如使用JavaScript脚本:
chkb.checked = true; 或 chkb.checked = false;
下图是CheckBox可以表现的三种状态:
第一种和第三种很常见,而且它们是可以使用HTML来设置的,就是说我们可以把CheckBox的初始状态通过一个叫checked的html元素的属性来确定。我们这里要说的Indeterminate状态虽然在IE4.0就开始支持了,可是却没有html元素属性来设置其值,而只能使用脚本来设置其Indeterminate状态。
比如使用JavaScript脚本(indeterminate默认是false):
chkb.indeterminate = true; 或 chkb.indeterminate = false;
注意:CheckBox的indeterminate是一个独立的属性,和CheckBox的checked、status的取值无关,也就是说它只会影响CheckBox的外观显示,我们仍然可以正常的使用脚本读取checked和status的值。
分享到:
相关推荐
在网页设计和开发中,`checkbox` 是一种常见的表单元素,用于用户进行二选一的选择,例如开启或关闭某个功能。...正确理解和使用 `indeterminate` 属性可以提升用户体验,让信息的展示更加清晰和直观。
首先,`indeterminate`属性是一个布尔值,它控制Checkbox的样式是否显示为中间状态,也就是通常所说的“部分选”状态。当一个复选框集合中,有部分项目被选中但并非全部时,该复选框的父级(通常是全选按钮)会呈现...
在上面的代码中,`GetDlgItem`函数用于获取指定ID的控件对象,`GetCheck`方法返回CheckBox的状态,BST_CHECKED表示选中,BST_UNCHECKED表示未选中,BST_INDETERMINATE表示不确定状态(通常用于多选框)。 除了消息...
而在JavaFX中,CheckBox类同样支持indeterminate属性,通过setIndeterminate(true)和setIndeterminate(false)进行切换。 对于源码的理解,我们可以通过阅读这些类的源代码来学习其内部实现机制。例如,Swing的...
例如,当CheckBox被选中时,我们可以改变`FontIcon`的`Glyph`属性来展示选中状态的图标。 在实际应用中,可能还需要处理鼠标悬停、点击等交互状态,以及调整布局和样式以适应不同的设计风格。这些都可以通过扩展...
CheckBox有多种状态,如Checked、Unchecked和Indeterminate。使用VisualStateManager,我们可以定义不同的状态触发器,改变不同状态下元素的属性。例如,当CheckBox被选中时,我们可以改变勾号的填充色。 6. **应用...
3. **CheckBox的添加与应用**:在TreeNode中启用CheckBox,需要设置`TreeNode.CheckState`属性,它可以是Checked、Unchecked或Indeterminate。同时,需要确保`TreeView.ShowCheckBoxes`属性被设置为true,以显示...
6. **Checkbox的其他特性**:Checkbox还支持`disabled`属性来禁用选项,`checked`属性设置默认选中状态,以及`indeterminate`状态(半选中)来表示部分子项已选中。 7. **无障碍性(Accessibility)**:对于无障碍...
If child.Object.checkbox = Indeterminate Then ParentCheckboxState = Indeterminate Exit For ElseIf child.Object.checkbox = Checked Then CheckedCount++ End If Next If CheckedCount > 0 And ...
总之,遍历`TreeView`上的`CheckBox`涉及到了`TreeView`控件的使用、`TreeNode`的属性操作以及递归遍历技巧。理解这些知识点,你就能有效地管理`TreeView`中`CheckBox`的状态,实现用户交互的需求。
这通常通过额外的属性(如`state`)来实现,该属性可以是'checked'、'unchecked'或'indeterminate'。 2. **事件监听**:通过JavaScript监听用户的点击事件,当用户点击一个节点时,更新该节点的状态,并可能会影响...
此属性只能使用 javascript 设置,如下例所示: var cb = document . getElementById ( 'whatever-checkbox' ) ;cb . indeterminate = true ; 不幸的是,人们不能在纯 HTML 中编写相同的内容,因为“不确定”不是一...
在使用 jQuery 操作复选框时,我们可能会使用 attr() 方法来设置或移除 checked 属性。然而,attr() 方法在不同浏览器间有时会有兼容性问题。例如,文中提到在 IE 浏览器下可以正常工作,而在 Firefox 浏览器下却...
例如,你可以利用`indeterminate`属性实现全选按钮的半选状态: ```javascript function updateSelectAllStatus() { var checkboxes = document.getElementsByName('options'); var allChecked = true; for (var...
尤其在使用Vue.js框架开发时,element-ui库提供了一套丰富的UI组件,其中包括Checkbox。但是,在某些业务场景中,需要实现多层嵌套的复选框功能,比如三级复选框,这在element-ui官方组件中并没有直接支持。 本文将...
if (checkbox.indeterminate) { siblingCheckboxes.forEach(sibling => sibling.indeterminate = true); } else { siblingCheckboxes.forEach(sibling => { sibling.checked = checkbox.checked; sibling....
6. 对于Indeterminate状态,需要使用CheckState属性来设置复选框的中间状态。例如,在Indeterminate_OnClick事件处理程序中,我们可以设置`checkBox1.CheckState = CheckState.Indeterminate;`。 通过这种方式,...
3. **TriState属性**:对于三态检查框,TriState属性可以设置为True、False或Indeterminate,允许用户选择不确定状态。 4. **Appearance属性**:除了Button之外,还可以设置为Flat,使检查框看起来更简洁。 5. **...