JavaScript 获取服务器端checkBoxlist控件选中的值
通用版本(不依赖任何类库)
function GetCheckBoxListValue(objID)
...{var v = new Array();var CheckBoxList = document.getElementById(objID);if(CheckBoxList.tagName == "TABLE")...{for(i=0;i<CheckBoxList.rows.length;i++) for(j=0;j<CheckBoxList.rows[i].cells.length;j++)if(CheckBoxList.rows[i].cells[j].childNodes[0])if(CheckBoxList.rows[i].cells[j].childNodes[0].checked==true)v.push(CheckBoxList.rows[i].cells[j].childNodes[1].innerText);}if(CheckBoxList.tagName == "SPAN")...{for(i=0;i<CheckBoxList.childNodes.length;i++)if(CheckBoxList.childNodes[i].tagName == "INPUT")if(CheckBoxList.childNodes[i].checked==true)...{i++;v.push(CheckBoxList.childNodes[i].innerText);} }return v;
}
Asp.net Ajax 版本(依赖 Asp.net Ajax 类库支持)
function GetCheckBoxListValue(objID)
...{var v = new Array();var CheckBoxList = $get(objID);if(CheckBoxList.tagName == "TABLE")...{for(i=0;i<CheckBoxList.rows.length;i++) for(j=0;j<CheckBoxList.rows[i].cells.length;j++)if(CheckBoxList.rows[i].cells[j].childNodes[0])if(CheckBoxList.rows[i].cells[j].childNodes[0].checked==true)Array.add(v,CheckBoxList.rows[i].cells[j].childNodes[1].innerText);}if(CheckBoxList.tagName == "SPAN")...{for(i=0;i<CheckBoxList.childNodes.length;i++)if(CheckBoxList.childNodes[i].tagName == "INPUT")if(CheckBoxList.childNodes[i].checked==true)...{i++;Array.add(v,CheckBoxList.childNodes[i].innerText);} }return v;
}
三、
CheckboxList是服务器控件,绑定数据容易,用着貌似蛮顺手的。但是生成的静态页面居然没有ListItem的Value值,所以默认情况下在页面中是取不到ListItem的值的。
原始生成页面代码:
<table id="ctl00_mainContent_FriendsList" border="0">
<tr>
<td><input id="ctl00_mainContent_FriendsList_0" type="checkbox" name="ctl00$mainContent$FriendsList$0" /><label for="ctl00_mainContent_FriendsList_0">jarome</label></td><td><input id="ctl00_mainContent_FriendsList_1" type="checkbox" name="ctl00$mainContent$FriendsList$1" /><label for="ctl00_mainContent_FriendsList_1">admin1</label></td><td></td>
</tr>
</table>
这里面只有Label里面的Text值,显然取不到Value值。
想点办法,自己加个值进来,在数据绑定之后加上下面代码:
foreach (ListItem li in FriendsList.Items)
{
li.Attributes.Add("alt", li.Value);
}
就是给ListItem加个alt属性,赋予Value值,相当于:
<asp:CheckBoxList ID="FriendsList" runat="server">
<asp:ListItem Value="jarome" alt="jarome">jarome</asp:ListItem>
<asp:ListItem Value="admin" alt="admin">admin1</asp:ListItem>
</asp:CheckBoxList>
页面生成代码:
<table id="ctl00_mainContent_FriendsList" border="0">
<tr>
<td><span alt="jarome"><input id="ctl00_mainContent_FriendsList_0" type="checkbox" name="ctl00$mainContent$FriendsList$0" /><label for="ctl00_mainContent_FriendsList_0">jarome</label></span></td><td><span alt="admin"><input id="ctl00_mainContent_FriendsList_1" type="checkbox" name="ctl00$mainContent$FriendsList$1" /><label for="ctl00_mainContent_FriendsList_1">admin1</label></span></td><td></td>
</tr>
</table>
看到多了个<span/>,alt中就是我们想要取得的值。
//获取CheckBoxList值,使用jQuery类库
function GetCheckBoxListValue(obj) { //obj为CheckBoxList的ClientID
var v = new Array();
$("#" + obj+ " input").each(function() {
if (this.checked) {
v.push($(this).parent().attr("alt"));
}
});
return v; //返回一列以','分隔的结果
}
转载于:https://www.cnblogs.com/myneng/articles/1691311.html
JavaScript 获取服务器端checkBoxlist控件选中的值相关推荐
- 从零开始使用JavaScript编写数据表格控件(转载)
想起来前段时间面试时遇到的问题,说是如何用javascript实现一个表格控件,说说思路,当时还不知道该怎么办,只是说使用Ext中的表格控件,被追问不使用第三方控件时如何实现就傻眼了,这篇文章介绍的非 ...
- 详解ASP.net的CheckBox和CheckBoxList控件
纯手写,难免出错,大家共同学习,其中有错误还望大家点出来及时修改以免误人子弟. CheckBox和CheckBoxList控件其实就像一对孪生兄弟般,他们同是复选框控件.只是后者弥补了前者使用效率低的 ...
- 限制CheckBoxList控件只能单选
开发要求,原本对CheckBoxList控件是用来让用户多选的.但现在特殊要求,这个CheckBoxList控件限制只能单选. 哈哈,看看Insus.NET做出来的效果: 为了你也能实现出来,可以参考 ...
- [开发笔记]-winfom ListBox控件选中项上下移动排序
实现ListBox控件选中项上下移动重新排序功能 效果图: 移动后效果: 代码: /// <summary>/// 上移选中项/// </summary>/// <par ...
- js html 导出word 不用activexobject,javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第2/2页...
javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第2/2页 更新时间:2008年06月21日 22:57:31 作者: 由于时间比较紧,没多的时候 ...
- Asp.net的CheckBox控件和CheckBoxList控件
首先就是关于控件的一些基本属性: 1.CheckBox/CheckBoxList控件:将控件拖入界面时应该用驼峰法命名该控件属性里的ID,然后就是可以根据控件的事件选择需要的事件编写代码 2.应该将控 ...
- JavaScript blog式日历控件javascript
javascript blog式日历控件 近来要做一个记事本系统,想找一个合适的日历控件,但网上的都是那种日历选择控件. 于是到qq的记事本系统找了一个,但里面的算法有点落后,所以用了它的样式自己写了 ...
- CheckBoxList 控件ListItem项 添加ToolTip属性(鼠标放在上面时,有提示)
CheckBoxList 控件ListItem项本身自带的没有ToolTip属性,但在开发中,时常会要用到此效果,故通过JS来实现 CS类: chk.Items.Add(new ListItem(&q ...
- 页面JS获取不到控件ID
为了使页面更加的友好,我们不可避免的要在页面上使用JS,所以在页面上使用javascript获取控件ID是很常见的事情.但是最近在使用JS的使用,遇到了一件让我很头疼的事情,在获取控件ID时,抱错了, ...
最新文章
- 既然很多工作 35 岁就会被裁员,那么深耕一个领域的意义是什么?
- 在内部循环中Continue外部循环
- JavaScript - reduce用法详解
- complementary prior
- Query String Parameters、Form Data、Request Payload的区别
- STM32通用和复用功能IO
- 在sql server 发生未指定的错误_一条sql查询是怎么执行的?
- MySql表以及数据导入导出
- linux 64位操作系统安装32位运行库
- 毕设题目:Matlab表盘识别
- 二元函数偏导数公式_偏导数计算公式大全
- 一则 HTTP 405 Method Not Allowed 的解决办法
- oeasy教您玩转vim - 005 - # 程序本质
- mysql admin账号密码忘记_使用mysqladmin命令修改Mysql密码与忘记密码
- mysql to sqlserver_mysql to sqlserver
- 2022-2028全球与中国电热毯市场现状及未来发展趋势
- 荣耀linux电脑开机后黑屏,开机黑屏进不了系统,教您解决电脑开机黑屏进不了系统...
- 如何判断一个数是否是NaN
- 复制带随机指针的链表<难度系数⭐⭐>
- 19个GIS相关地理信息数据