C#
Repeater 嵌套datalist
先绑定repeater 再绑定里面的datalist,用Repeater1_ItemDataBound()来绑定,没有问题。现在问题是:
datalist 里面每项都有一个checkbox ,可以选择,点击保存来保存选择的数据。
如何获得选中的checkbox的ID呢,在哪个函数获取?
有会的就教教我吧
Repeater 嵌套datalist
先绑定repeater 再绑定里面的datalist,用Repeater1_ItemDataBound()来绑定,没有问题。现在问题是:
datalist 里面每项都有一个checkbox ,可以选择,点击保存来保存选择的数据。
如何获得选中的checkbox的ID呢,在哪个函数获取?
有会的就教教我吧
{
foreach(RepeaterItem ri in repeater1.Items)
{
DataList dl=(DataList)ri.FindControl("datalist1");
foreach(DataListItem di in dl.Items)
{
CheckBox cb=(CheckBox)di.FindControl("checkbox1");
if(cb.Checked)
{
//di.ItemIndex是索引,或者再di.FindControl。随你了
}
}
}
}纯手写,未测试,自己调
id分别是Repeater1,DataList1,CheckBox1
protected void Button1_Click(object sender, EventArgs e)
{
string str = "";
for (int i = 0; i < Repeater1.Items.Count; i++)
{
DataList myDataList = (DataList)Repeater1.Items[i].FindControl("DataList1");
for (int j = 0; j < myDataList.Items.Count; j++)
{
CheckBox myCheckBox = (CheckBox)myDataList.Items[j].FindControl("CheckBox1");
if (myCheckBox.Checked)
{
str += "Repeat的第" + i.ToString() + "行,DataList的第" + j.ToString() + "行选中<br />";
}
}
}
Response.Write(str);
}
{
DataList dl=item .FindControl("datalist1") as DataList;
foreach(DataListItem di in dl.Items)
{
CheckBox cb=di.FindControl("checkbox1") as CheckBox;
if(cb.Checked)
{
}
}
一楼管得对,
“//di.ItemIndex是索引,或者再di.FindControl。随你了”
换成你要做的东西,比如说 cb.ID 是程序的ID, cb.ClientID是输出客户端的ID。