DataGrid中的CheckBox问题。

lixionglz 2005-03-06 11:50:41
我在DataGrid中使用模板列添加了CheckBox控件。
标题栏有一个,每一列开头都有。
点击标题栏的CheckBox,想实现比如网易邮箱中的CheckBox全选功能。
但无法实现。
求其代码。
谢谢。
...全文
151 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jack2013tong 2005-03-06
  • 打赏
  • 举报
回复
应该就是在datagrid的header中加一个checkbox,
然后在itemcommand事件处理函数中判断是该checkbox触发的情况下循环所有item,使其中的checkbox全为选中状态

象这样的事件最好用javascript实现,尽量少用后台代码,以免浪费资源
AllenTing 2005-03-06
  • 打赏
  • 举报
回复
应该就是在datagrid的header中加一个checkbox,
然后在itemcommand事件处理函数中判断是该checkbox触发的情况下循环所有item,使其中的checkbox全为选中状态
cuike519 2005-03-06
  • 打赏
  • 举报
回复
http://www.csdn.net/Develop/read_article.asp?id=21585
46539492 2005-03-06
  • 打赏
  • 举报
回复
up!
bitsbird 2005-03-06
  • 打赏
  • 举报
回复
<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="Realty.Aptm.Aptmt.Apartment._Default" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title></title>
<meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<LINK href="../../../Css/mainCSS.css" rel="stylesheet">
<script language="javascript" src="../../../Js/funBasic.js" type="text/javascript"></script>
<script type="text/javascript">
/**
* 名称 : allSelect
* 功能 : 把所有的信息都选中为指定状态
*/
function allSelect()
{
for(var i=0; i<document.getElementsByName('nchkID').length; i++)
{
document.getElementsByName('nchkID')[i].checked=document.Default.chkState.checked;
}
getID();
}

/**
* 名称 : getID
* 功能 : 得到选择的记录集并让相应的功能设可(不可)用
*/
function getID()
{
var arrChks = new Array();
arrChks = GetChkVlas(document.getElementsByName('nchkID'));

if(arrChks.length==0)
{
document.Default.btnModi.disabled=true;
document.Default.btnDel.disabled=true;
}
if(arrChks.length==1)
{
document.Default.btnModi.disabled=false;
document.Default.btnDel.disabled=false;
}
if(arrChks.length>1)
{
document.Default.btnModi.disabled=true;
document.Default.btnDel.disabled=false;
}
}

/* 记录修改 */
function recModi()
{
var chkVal = new Array();
chkVal = GetChkVlas(document.getElementsByName('nchkID'));
var iCoum = document.Default.txtBuildID.value;
window.location.href = "Modi.aspx?id="+chkVal[0].toString()+"&comu="+iCoum;
}
/*查询*/
function query()
{
var strBuild = trimall(document.all.txtBuildID.value);
window.location.href = "Query.aspx?id="+strBuild;
}
/*记录的删除*/
function recDel()
{
var chkVal = new Array();
chkVal = GetChkVlas(document.getElementsByName('nchkID'));
var iCoum = document.Default.txtBuildID.value;
window.location.href = "Del.aspx?id="+chkVal.toString()+"&comu="+iCoum;
}
</script>
</HEAD>
<body MS_POSITIONING="FlowLayout">
<div class="div-main">
<table height="99%" cellSpacing="0" width="624" border="1">
<tr>
<td vAlign="center" align="middle">
<form id="Default" method="post" runat="server">
<TABLE cellSpacing="0" width="600" border="1">
<TR>
<TD vAlign="center" align="middle" width="600" colSpan="6" height="100%"><asp:datagrid id="dgrdAptm" runat="server" CssClass="datagrid-main" AutoGenerateColumns="False" Width="600px" HorizontalAlign="Center" AllowPaging="True">
<SelectedItemStyle ForeColor="Red"></SelectedItemStyle>
<EditItemStyle HorizontalAlign="Center" VerticalAlign="Middle"></EditItemStyle>
<AlternatingItemStyle CssClass="datagrid-Alter"></AlternatingItemStyle>
<ItemStyle HorizontalAlign="Center" CssClass="datagrid-Item" VerticalAlign="Middle"></ItemStyle>
<HeaderStyle HorizontalAlign="Center" CssClass="datagrid-Header" VerticalAlign="Middle"></HeaderStyle>
<FooterStyle HorizontalAlign="Center" VerticalAlign="Middle"></FooterStyle>
<Columns>
<asp:TemplateColumn>
<HeaderStyle HorizontalAlign="Center" Width="30px" VerticalAlign="Middle"></HeaderStyle>
<ItemTemplate>
<INPUT type=checkbox id=nchkID onclick="getID()" value='<%# DataBinder.Eval(Container.DataItem, "ID").ToString() %>'>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="Name" ReadOnly="True" HeaderText="房源名称">
<HeaderStyle HorizontalAlign="Center" Width="95px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="AptmTypKind" ReadOnly="True" HeaderText="户型类别">
<HeaderStyle HorizontalAlign="Center" Width="90px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="InsideArea" ReadOnly="True" HeaderText="套内面积">
<HeaderStyle HorizontalAlign="Center" Width="80px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="FlrHeight" ReadOnly="True" HeaderText="层 高">
<HeaderStyle HorizontalAlign="Center" Width="70px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="Balcony" ReadOnly="True" HeaderText="阳台类型">
<HeaderStyle HorizontalAlign="Center" Width="90px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="BasUnitPric" ReadOnly="True" HeaderText="基本单价">
<HeaderStyle HorizontalAlign="Center" Width="90px" VerticalAlign="Middle"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="stateName" HeaderText="状态"></asp:BoundColumn>
</Columns>
<PagerStyle VerticalAlign="Middle" Font-Underline="True" HorizontalAlign="Center" CssClass="datagrid-Pager" Mode="NumericPages"></PagerStyle>
</asp:datagrid></TD>
</TR>
<TR>
<TD class="td-left-right" vAlign="center" align="middle" width="100" height="30"><input id="chkState" onclick="allSelect()" type="checkbox" name="chkState">全选
</TD>
<TD class="td-left-right" vAlign="center" align="middle" width="100" height="30"><INPUT class="button-main" id="btnNew" onmouseover="getFocusColor(this)" onmouseout="getBlurColor(this)" type="button" value="添 加" name="btnNew" runat="server">
</TD>
<TD class="td-left-right" vAlign="center" align="middle" width="100" height="30"><INPUT class="button-main" id="btnModi" onmouseover="getFocusColor(this)" disabled onclick="recModi()" onmouseout="getBlurColor(this)" type="button" value="修 改" name="btnModi">
</TD>
<TD class="td-left-right" vAlign="center" align="middle" width="100" height="30"><input class="button-main" id="btnDel" onmouseover="getFocusColor(this)" disabled onclick="recDel()" onmouseout="getBlurColor(this)" type="button" value="删 除" name="btnDel">
</TD>
<TD class="td-left-right" vAlign="center" align="middle" width="100" height="30"><INPUT class="button-main" id="btnQuery" onmouseover="getFocusColor(this)" onclick="query()" onmouseout="getBlurColor(this)" type="button" value="查 询" name="btnQuery">
</TD>
<td class="td-left" vAlign="center" align="middle" width="100" height="30"><INPUT class="text-main" id="txtBuildID" style="DISPLAY: none; WIDTH: 41px; HEIGHT: 21px" type="text" size="1" name="txtBuildID" runat="server">
</td>
</TR>
</TABLE>
</form>
</td>
</tr>
</table>
</div>
</body>
</HTML>
lixionglz 2005-03-06
  • 打赏
  • 举报
回复
非常感谢。

62,039

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧