asp.net复选框和嵌套转发器

时间:2011-06-14 10:10:18

标签: asp.net checkbox nested

我在每一行都嵌套了中继器和复选框(如树视图或ctaegory和项目视图)。 每次检查/取消选中该类别应检查/取消选中项目。 有什么建议? 谢谢,

1 个答案:

答案 0 :(得分:0)

之前我必须这样做,我用一个简单的JavaScript完成了它。基本上,当你绑定转发器时,将CategoryId提供给复选框的检查事件,例如

onchange="SelectCategory('<%# Eval("CategoryID") %>')"

将您的子项目包裹在ID以CategoryId结尾的div中,例如

<div ID="divItems'<%# Eval("CategoryID") %>'">...</div>

这将允许您通过执行

在SelectCategory(catId)函数中找到它
itemsDiv = document.GetElementById("divItems" + catId);

遍历其子女并检查您的物品:

var items = itemsDiv.getElementsByTagName('INPUT');
for (var i=0; i < items.length; i++) {
        if (collection[i].type.toUpperCase() == 'CHECKBOX')
            collection[i].checked = true; // or even "= CategoryCheckbox.checked"
    }

使用jQuery更好:

$('#divItems' + catId).find(':checkbox').attr('checked', 'checked');