DataGrid分页的问题 DataGrid中有一列模板列,里面是一个CheckedBox,比如选中第一页中某些记录的CheckedBox,翻到第二页,再回来发现第一页的全部都变成未选中,怎样才能保持原来选择的结果? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://dotnet.aspx.cc/ShowDetail.aspx?id=F43AF9A5-2C2E-4AA6-E976-21E9569F5A8A 谢谢,这个问题解决了,可是还有一个问题:点击DataGrid外的一个CheckBox(全选),怎样使得DataGrid中的所有CheckBox全部被选中? 在DataGrid中操作CheckBox控件http://nhlinkin.cnblogs.com/articles/113590.html 有2种方法1。。 在属性生成器里的页眉中写入<input type=checkbox id=CheckAll onclick='javascript:SelAll()' title='全选/全取消'>2在Button事件中写System.Web.UI.WebControls.CheckBox chkExport; //如果要全选 if(cmdSelectAll.Text == "全选") { //循环设置DataGrid控件中的项 foreach(DataGridItem oDataGridItem in dgCheckBox.Items) { //建立模板列中CheckBox控件的引用 chkExport = (CheckBox)oDataGridItem.FindControl("chkExport"); //选中 chkExport.Checked =true; } cmdSelectAll.Text = "全消"; } else { foreach(DataGridItem oDataGridItem in dgCheckBox.Items) { //建立模板列中CheckBox控件的引用 chkExport = (CheckBox)oDataGridItem.FindControl("chkExport"); //取消 chkExport.Checked = false; } cmdSelectAll.Text = "全选"; } <ItemTemplate ><asp:CheckBox ID ="chbCheckAll" runat ="server" onclick="SureDisable(this.checked, this.id);"/></ItemTemplate>///////////////////////////////////////////////////////////////////////////////function SureDisable(chkVal, idVal) { if( chkVal==false ) { var header = document.getElementById('gvProjectView_ctl01_chbCheckHeader'); header.checked = header.checked==true?false:header.checked; } var frm = document.forms[0]; var checkedCount = 0; var RowCount = 0; var o1 = document.getElementById("lbtnTaskDetail"); var o2 = document.getElementById("lbtnGanttChart"); for (i=0; i<frm.length; i++) { var elem = frm.elements[i]; if (elem.id.indexOf ('chbCheckAll') != -1) { if( frm.elements[i].checked == true ) checkedCount=checkedCount+1; } if( elem.id.indexOf ('chbCheckAll') != -1 || elem.id.indexOf ('chbCheckHeader') != -1 ) { RowCount++; } } var result = RowCount-checkedCount; if( result == 1 ) { var header = document.getElementById('gvProjectView_ctl01_chbCheckHeader'); header.checked = header.checked==false?true:header.checked; } if( checkedCount != 0 ) { o1.disabled = false; o2.disabled = false; return true; } else { o1.disabled = true; o2.disabled = true; return false; } } 对于数据导入excel 文字乱码的问题有没有好点的解决方案? datagrid中的radiobuttonlist 列选中某向后,怎么取消(即一项都不选中) 隐藏容器内事件失效问题 System.Net.WebClient 不支持给定路径 没办法了,找大家帮忙。。 获得第一个字母与两个小问题 SQL:object_id(N'[dbo].[dfdd]')里的N 是什么意思 请求大侠帮解决 extjs 问题啊 无法获取引用自动刷新的路径,怎么解决 在FOXPRO 6.0 中如何调用web服务! 有关HTML的file控件的问题 急求好用的水晶报表10.0,我想用于web打印
1。。
在属性生成器里的页眉中写入
<input type=checkbox id=CheckAll onclick='javascript:SelAll()' title='全选/全取消'>2
在Button事件中写
System.Web.UI.WebControls.CheckBox chkExport;
//如果要全选
if(cmdSelectAll.Text == "全选")
{
//循环设置DataGrid控件中的项
foreach(DataGridItem oDataGridItem in dgCheckBox.Items)
{
//建立模板列中CheckBox控件的引用
chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");
//选中
chkExport.Checked =true;
} cmdSelectAll.Text = "全消";
}
else
{
foreach(DataGridItem oDataGridItem in dgCheckBox.Items)
{
//建立模板列中CheckBox控件的引用
chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");
//取消
chkExport.Checked = false;
}
cmdSelectAll.Text = "全选";
}
<asp:CheckBox ID ="chbCheckAll" runat ="server" onclick="SureDisable(this.checked, this.id);"/>
</ItemTemplate>///////////////////////////////////////////////////////////////////////////////
function SureDisable(chkVal, idVal)
{
if( chkVal==false )
{
var header = document.getElementById('gvProjectView_ctl01_chbCheckHeader');
header.checked = header.checked==true?false:header.checked;
}
var frm = document.forms[0];
var checkedCount = 0;
var RowCount = 0;
var o1 = document.getElementById("lbtnTaskDetail");
var o2 = document.getElementById("lbtnGanttChart");
for (i=0; i<frm.length; i++)
{
var elem = frm.elements[i];
if (elem.id.indexOf ('chbCheckAll') != -1)
{
if( frm.elements[i].checked == true )
checkedCount=checkedCount+1;
}
if( elem.id.indexOf ('chbCheckAll') != -1 || elem.id.indexOf ('chbCheckHeader') != -1 )
{
RowCount++;
}
}
var result = RowCount-checkedCount;
if( result == 1 )
{
var header = document.getElementById('gvProjectView_ctl01_chbCheckHeader');
header.checked = header.checked==false?true:header.checked;
}
if( checkedCount != 0 )
{
o1.disabled = false;
o2.disabled = false;
return true;
}
else
{
o1.disabled = true;
o2.disabled = true;
return false;
}
}