ASP.NET中怎么动态更新CheckBox的状态为选中?

来源:百度知道 编辑:UC知道 时间:2024/06/24 08:42:37
请教个问题:
先用Repeater读取了class表中的数据,每条前面有个CheckBox

charge表中的classid字段记录是这样:1,3,5,6,7,他们就是class表中的某几条数据的ID的集合

现在要在后台写个判断,要是charge表中的classid中的记录有Repeater其中的ID,那么Repeater中的那条数据前面的CheckBox为选中状态!

应该怎么写这个判断呢?是不是把1,3,5,6,7转为数组后遍历?

回答能详细点吗?

将每条记录的ID绑定到checkbox
<input type=checkbox value=',<%# Eval("id")%>,' />
将记录“1,3,5,6,7”输出到前台
function setCheck()
{
var ids = ",<%=ids%>,";//id两端加逗号非常必要
var chks = document.getElementsByTagName("input");
for(var i=0;i<chks.length;i++)
{
if(chks[i].type=="checkbox"&&ids.indexOf(chks[i].value)!=-1)
chks[i].checked=true;
}
}

.cs
protected string ids = "1,3,5,6,7";

可以JS来做,
用getElementsByName得到checkbox数组,
然后遍历数组,
可以得到行对象

可以把存在在表charge中的classid取出来放在一个字符串中,然后使用字符串的是否包含属性来判断,不用遍历