您的位置:首页 > Web前端 > JavaScript

JavaScript实现DataGrid中添加CheckBox列(全选与否)

2008-09-10 14:20 543 查看
(一).功能

1. JavaScript检索CheckBox并实现全选和全消功能

用C#等写的CheckBox需要回发到服务端执行,

而用JavaScript可以在直接客户端实现,效率高些

(二).代码

1. DataGrid中的代码主要片段:

<Columns>

<HeaderTemplate> //头模板代码

<asp:CheckBox id="chkHeader" runat="server" AutoPostBack="False" //AutoPostBack设为假,不需要回发

onclick="javascript:SelectAll(this);"></asp:CheckBox>

</HeaderTemplate>

<ItemTemplate> //项模板代码

<asp:CheckBox id="chkItem" runat="server"></asp:CheckBox>

</ItemTemplate>

</Columns>

2. 在当页加入:

<script language="javascript">

function SelectAll(tempControl)

{

//将除头模板中的其它所有的CheckBox取反

var theBox=tempControl;

xState=theBox.checked;

elem=theBox.form.elements;

for(i=0;i<elem.length;i++)

if(elem[i].type=="checkbox" && elem[i].id!=theBox.id)

{

if(elem[i].checked!=xState)

elem[i].click();

}

}

</script>

3.当使用者选择好后台代码取得某列CheckBox的值:

for (int i = 0;i <this.DataGrid.Items.Count;i++)

{

bool blnIfSelect = ((CheckBox)this.DataGrid.Items[i].FindControl("chkItem")).Checked;

....; //这是可以根据blnIfSelect进行各种操作了

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: