您的位置:首页 > Web前端 > JavaScript

js获取CheckBoxList选中的值

2013-04-24 23:03 651 查看
由于这几天要做项目中要通过js获取CheckBoxList选中的值,一开始在网上找了好多都是通过添加CheckBoxList的Attributes来实现,看起来感觉有点麻烦,故自己想了下也是通过添加Attributes来实现,但是通过添加item的Attributes不是CheckBoxList的Attributes。

以下是具体的实现方法:

后台代码:

protected void Page_Load(object sender, EventArgs e)
{
IList<test> testList = new List<test>();
for (int i = 0; i < 10; i++) {
test t = new test();
t.Name = "name"+i;
t.Code = "code" + i;
testList.Add(t);

CheckBoxList1.DataSource = testList;
CheckBoxList1.DataTextField = "name";
CheckBoxList1.DataValueField = "code";
CheckBoxList1.DataBind();

}
}

protected void CheckBoxList1_DataBound(object sender, EventArgs e)
{
foreach (ListItem item in CheckBoxList1.Items)
{
item.Attributes["valueCode"] = item.Value;
}
}


主要是通过DataBound的时候设置item的Attributes

前台页面代码:

<asp:CheckBoxList ID="CheckBoxList1" runat="server" OnDataBound="CheckBoxList1_DataBound">
</asp:CheckBoxList>
<input id="Button1" type="button" value="button" onclick="getCheckValue();" />


脚本代码:

<script type="text/javascript" language="javascript">
function getCheckValue() {
var chkObject = document.getElementById("CheckBoxList1");
var chkInput = chkObject.getElementsByTagName("input");
var item="";
for (var i = 0; i < chkInput.length; i++) {
if (chkInput[i].checked) {
item += chkInput[i].parentNode.valueCode + ",";
}
}
alert(item);
}
</script>


主要是通过获取所选中项的前一个元素的属性valueCode,就是在后台代码中添加item的属性

以下是本文的效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: