js 如何控制checkbox选中的个数。
如何让value属性传值给后台,而前台页面提示框显示标签后的内容?
具体代码:
<html>
<head><title></title>
</head>
<script type="text/javascript">
function check(component){
var strArray = document.getElementsByName("smallclassauthorize");
var content = document.getElementById("divcheck");
if(content.innerHTML!=""){
content.innerHTML="";
}
var lengthstr=0;//合计选中的个数
for(var i=0;i<strArray.length;i++){
if(strArray[i].checked==true){
lengthstr++;
if(lengthstr > 2){
component.checked=false;
alert("对不起,你只能选择两项");
return false;
}
content.innerHTML +="这是第"+lengthstr+"选中:"+ strArray[i].nextSibling.nodeValue;
//.value(只能获得checkbox 中value属性的值)
//改成.nextSibling.nodeValue(这样可以获得<input>节点后兄弟节点的内容。)
if(i > 1){
content.innerHTML+="<br/>";
}
}
}
}
</script>
<body>
<input name="smallclassauthorize" type="checkbox" onclick="check(this);" value="小类一"/>小类一<br />
<input name="smallclassauthorize" type="checkbox" onclick="check(this);" value="小类二"/>小类二<br />
<input name="smallclassauthorize" type="checkbox" onclick="check(this);" value="小类三"/>小类三s
<div id="divcheck">
</div>
</body>
</html>
注意:
1:nextSibling属性
该属性表示当前节点的下一个节点(其后的节点与当前节点同属一个级别);如果其后没有与其同级的节点,则返回null。
需要特别注意的是:该属性在不同的浏览器中的执行结果并不都相同.
<body> <div> <input id="a4" type="button" onclick="alert(this.nextSibling);" value="d" /> <input id="a5" type="button" onclick="alert(this.nextSibling);" value="e" /> </div> </bod 这是因为input作为创建各种表单输入控件的标签,无论是生成button、checkbox、radio...等或其他表单控件,IE都会自动在后面创建一个1字节位的空白。
IE将跳过在节点之间产生的空格文档节点(如:换行字符),而Mozilla不会这样——FF会把诸如空格换行之类的排版元素视作节点读取,因此,在ie中用nextSibling便可读取到的下一个节点元素,在FF中就需要这样写:nextSibling.nextSibling了。
不过现在的浏览器不会有这样的问题。
在<input />inputcontent 后面直接由.nextSibling.nodeValue拿到值。
(再FF下使用.childNodes也有同样的问题)
opera和safari对nextSibling的处理方式与FF一致
2:previousSibling属性
该属性与nextSibling属性的作用正好相反。例如:someTagObject.nextSibling.previousSibling其实返回的是该标签元素本身,但前提必须是:该标签元素的后面必须有一个同级的元素,否则就返回null了。
3:通过nextSibling或者 previousSibling所获得的HTML标签元素对象的属性问题
一般先通过nextSibling.nodeName来获知其标签名,或者通过nextSibling.nodeType来获知其标签类型,然后,如果该nextSibling.nodeName = #text,则通过nextSibling.nodeValue来获知其文本值;否则,可以通过nextSibling.innerHTML等其他常用标签元素属性来获取其属性。
参考文献:
http://www.witpark.com/article/20/6467.html
一般情况下:
x.parentNode.previousSibling.childNodes[0]
x.parentNode.previousSibling.getElementsByTagName('xx')[0]
//以下方法可以避免此种问题
x.parentNode.parentNode.getElementsByTagName('xx')[0]
分享到:
相关推荐
点击按钮获取选中的CheckBox值,JQ实现,代码非常简单。
### 遍历CheckBoxList,获得选中项的值动态绑定CheckBoxList #### 知识点一:CheckBoxList概述及应用场景 **CheckBoxList** 是ASP.NET Web Forms中一个非常有用的控件,它允许用户选择一个或多个选项。CheckBoxList...
本知识点将深入探讨如何使用jQuery获取选中的checkbox值,以及如何控制checkbox的选中状态。 ### jQuery获取选中的checkbox值 1. **理解checkbox的使用场景**: 当用户需要在多个选项中选择一个或多个时,复选框...
// 得到一个checkbox数组 var checkboxes = checkboxlist_td.getElementsByTagName("input"); // 遍历复选框 for (var i = 0; i ; i++) { // 如果不是第一个且每五个复选框后插入一个换行符 if (i != 0 && i % 5 ...
在JavaScript环境下,处理GridView的数据交互尤为重要,特别是当需要获取用户通过Checkbox选择的行信息时。本文将详细介绍如何使用JavaScript获取GridView中选中Checkbox行的信息。 首先,理解基础概念: 1. **...
本文将深入探讨如何巧妙地处理`checkboxlist`的默认选中值以及实现换行显示。 首先,我们需要创建一个数据实体类来封装复选框的选项。例如,`CheckboxBean`类,包含`id`和`name`两个属性,分别代表复选框的唯一标识...
得到选中项的value值并拼接成一个字符串返回 public string GetChecked(CheckBoxList checkList, string separator) { string str = ; for (int i = 0; i < checkList.Items.Count; i++) { if (checkList.Items...
// 存储列表项数据的列表,Item类包含一个表示Checkbox状态的布尔值 public void setItems(List<Item> items) { this.items = items; notifyDataSetChanged(); } @Override public View getView(int ...
这样,我们就得到了一个二维数组,其中每个子数组包含两个元素:复选框的值和固定值2。 最后,我们使用jQuery的`$.post`方法发起一个AJAX POST请求,将JSON格式化的`array`作为数据发送到'test1.php'。`JSON....
可以使用GetItemChecked方法和GetItemText方法来得到全部选中的值,并将选中的项的文本组合成为一个字符串。例如: ```csharp string strCollected = string.Empty; for (int i = 0; i ; i++) { if (checkedListBox...
2. **确定选择项**:根据解析出的`__EVENTTARGET`值,我们可以判断出是哪个`CheckBoxList`项触发了事件。 3. **读取选择状态**:最后,我们可以通过`CheckBoxList`控件的`SelectedIndices`或`SelectedItems`属性来...
`SetNodeChecked`函数同样接收一个`TTreeNode`指针和一个布尔值,用来设定节点的CheckBox状态。这里的实现涉及到了`INDEXTOSTATEIMAGEMASK`宏的使用,它用于转换状态图像掩码。 ```cpp void SetNodeChecked...
- 状态同步:当用户在Dbgrideh中改变复选框状态时,应确保数据源的相应字段值也得到更新,反之亦然。这可以通过处理Dbgrideh的OnEditChange事件来完成。 - 批量操作:可以通过遍历Dbgrideh的SelectedRows集合来...
### jQuery 获取 Select、Radio、Checkbox 的 Text 和 Value 值详解 #### 一、Select 下拉框的操作 在网页开发中,`<select>` 标签用于创建下拉列表,通常用于用户输入时的选择操作。jQuery 提供了简单且强大的...
在Android开发中,ListView是一...通过合理利用ViewHolder和监听CheckBox状态,我们可以确保每个Checkbox的状态在滑动时得到正确维护,同时提供方便的全选操作。在实际开发中,可以根据具体需求进行适当的调整和优化。
34. UseMaskColorStyle 属性:该属性用于获得或设置一个值,决定是否将 MaskColor 属性中赋值的颜色用于“屏蔽”(即,用于创建透明区)。 35. Value 属性:该属性用于设置复选框处在什么状态,复选框控件有三种...
1. **事件处理**:通常,你会在特定的事件(如 `onChange` 或 `onClick`)中检查 CheckBox 的状态,以确保用户的操作得到及时响应。 2. **多选 CheckBox**:如果你需要处理多个 CheckBox,可以通过循环遍历组件集合...
文章作者认为这个方法可能有些复杂,并期望得到更简洁的实现方式,同时对使用CheckboxList控件的方法也表达了兴趣。在***中,CheckboxList控件提供了另一种方式来处理复选框,可能更适合于需要列出多项供用户选择的...
例如,我们可以使用`document.querySelectorAll('input[type="checkbox"]:checked')`获取所有被选中的复选框,然后读取其`value`属性,这些值通常对应数据库中记录的ID。 一旦获得了要删除的记录ID,就需要与服务器...