【发布时间】:2009-08-18 21:56:45
【问题描述】:
我有 GridView 和 CheckBox 在它的标题和每行另一个:
<asp:GridView runat="server">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<input type="checkbox" onclick="checkAll(this.checked)" />
</HeaderTemplate>
<ItemTemplate>
<input name="checkSelect" type="checkbox" value='<%# Eval("ID") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我希望主复选框(取消)选中所有其他复选框。
所以我有JavaScript函数:
function checkAll(checked) {
var grid = document.getElementById("<%= gridViewStatement.ClientID %>");
for (i = 1; grid.rows.length - 1; i++) {
grid.rows[i].getElementsByTagName("input")[0].checked = checked;
}
}
如果我把它放在<script> 标签内,它的工作原理
<script type="text/javascript" language="javascript">
</script>
如果我把函数放在文件中
<script type="text/javascript" language="javascript" src="scripts.js"></script>
它停止工作!根目录下的文件,名称写正确。
我做错了什么??
附:有什么可以改善我的功能的吗?
附言我使用HtmlCheckBox 而不是asp:CheckBox,因为我将每个绑定到“ID”列并在Request.Form 中获取ID 列表。我说的对吗?
【问题讨论】:
标签: .net javascript