html中遍历checkboxlist,jQuery获取checkboxlist的value值的方法_jquery

CheckboxList是服务器控件,绑定数据容易,服务器端获取选中值也容易。但是生成的静态页面居然没有ListItem的Value值,所以默认情况下用js在页面中是取不到ListItem的值的。至于为什么不显示value值,我也不清楚,本篇给出一个用jQuery获取checkboxlist值的方法。

先看看原始的页面html代码:

下面我们绑定checkboxlist,代码如下:

if (dt != null && dt.Rows.Count > 0)

{

foreach (DataRow dr in dt.Rows)

{

//分别为text值、value值

listTest.Items.Add(new ListItem(dr["Title"].ToString(), dr["ID"].ToString()));

}

}

页面中生成的html代码如下:

基于jQuery的一个震动效果

使用css的overflow属性改变缩略图大小

可以看出checkboxlist转换为一个表格的形式,并且其中没有value值。label中的值,即为text值。当点击它时,也可以选中checkbox,这里在选checkbox时提高了用户体验。

下面进入我们的处理过程,首先,在绑定checkboxlist时,为ListItem每个对象添加一个alt属性,值保存对应的value值,代码如下:

if (dt != null && dt.Rows.Count > 0)

{

foreach (DataRow dr in dt.Rows)

{

//分别为text值、value值

listTest.Items.Add(new ListItem(dr["Title"].ToString(), dr["ID"].ToString()));

}

//为ListItem对象添加alt属性,值保存value值

foreach (ListItem li in listTest.Items)

{

li.Attributes.Add("alt", li.Value);

}

}

现在,生成的html代码如下:

基于jQuery的一个震动效果

使用css的overflow属性改变缩略图大小

从上边可以看出,多了一个span标签,里边alt的值即为我们需要的value值。使用下边的jQuery代码即可获得:

$(document).ready(function() {

$("#btnShow").click(function() {

var valuelist = ""; //保存checkbox选中值

//遍历name以listTest开头的checkbox

$("input[name^='listTest']").each(function() {

if (this.checked) {

//$(this):当前checkbox对象;

//$(this).parent("span"):checkbox父级span对象

valuelist += $(this).parent("span").attr("alt") + ",";

}

});

if (valuelist.length > 0) {

//得到选中的checkbox值序列,结果为400,398

valuelist = valuelist.substring(0, valuelist.length - 1);

}

});

});

以上就是jQuery获取checkboxlist的value值的方法,不知道大家有没有真正理解,希望这篇文章能够帮到大家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值