【发布时间】:2011-12-01 06:02:09
【问题描述】:
我在我的 aspx 页面中使用了两个 gridview 控件。而且我的两个控件中都有一列复选框。我通过在两个网格视图的标题模板中提供一个复选框并使用 java 脚本函数来帮助用户选择/取消选择我的两个网格视图中的所有复选框。下面是代码
<script type="text/javascript">
function UncheckParent(obj) {
var isUnchecked = obj.checked;
if (isUnchecked == false) {
var frm = document.forms[0];
for (i = 0; i < frm.length; i++) {
if (frm.elements[i].id.indexOf('chkSelectAllCheckboxes') != -1) {
frm.elements[i].checked = false;
}
}
}
}
function CheckAll(obj) {
var row = obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;
var inputs = row.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].type == "checkbox") {
inputs[i].checked = obj.checked;
}
}
}
</script>
但问题是,一旦我选择或取消选择此类复选框之一,两个网格视图中的所有复选框都会被选中。我还可以举一个简短的例子来说明正在发生的事情。两个网格视图 gdvwStudents 和 gdvwTeachers。两者都有复选框列和标题模板中的复选框。当我单击 gdvwStudents 的标题复选框时使用上面的代码,gdvStudents 和 gdvTeachers 中的所有复选框都被选中。请
【问题讨论】:
标签: javascript asp.net c#-4.0