CheckBoxList是服务器控件,绑定数据容易,服务器端获取选中值也容易。但是生成的静态页面居然没有ListItem的Value值,所以默认情况下用js在页面中是取不到ListItem的值的。至于为什么不显示value值,我也不清楚,本篇给出一个用jQuery获取checkBoxlist值的方法。
rush:xhtml;">
BoxList runat="server" ID="listTest">
0)
{
foreach (DaTarow dr in dt.Rows)
{
//分别为text值、value值
listTest.Items.Add(new ListItem(dr["Title"].ToString(),dr["ID"].ToString()));
}
}
rush:xhtml;">
可以看出checkBoxlist转换为一个表格的形式,并且其中没有value值。label中的值,即为text值。当点击它时,也可以选中checkBox,这里在选checkBox时提高了用户体验。 下面进入我们的处理过程,首先,在绑定checkBoxlist时,为ListItem每个对象添加一个alt属性,值保存对应的value值,代码如下:
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);
}
}
rush:xhtml;">
从上边可以看出,多了一个span标签,里边alt的值即为我们需要的value值。使用下边的jQuery代码即可获得:
0) {
//得到选中的checkBox值序列,结果为400,398
valuelist = valuelist.substring(0,valuelist.length - 1);
}
});
});
以上就是jQuery获取checkBoxlist的value值的方法,不知道大家有没有真正理解,希望这篇文章能够帮到大家。