gridview如何实现全选/不定选 删除

renjuwht 2009-03-29 02:54:43
我看了个方法很麻烦..有没简单一点的..谢谢
...全文
401 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2009-03-30
  • 打赏
  • 举报
回复
<asp:TemplateField HeaderText="<input type=checkbox name='selectall' onClick='SelectAll(document.form1)'>全选">
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" Width="8%"></HeaderStyle>
<ItemTemplate>
<asp:CheckBox id="CheckBox1" runat="server" ToolTip='<%#DataBinder.Eval(Container.DataItem,"A")%>'>
</asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
function SelectAll(frm)
{
for (var i=0;i<frm.elements.length;i++)
frm.elements[i].checked = frm.selectall.checked;
}

function CheckSelect(frm)
{
var col=frm.elements;
var obj=frm.selectall;
var intEls=0,intChks=0;
for(var i=0;i<col.length;i++)
{
if(col[i].type=="checkbox"&&col[i].name!="selectall")
{
intEls++;
if(col[i].checked)
intChks++;
}
}
obj.checked=(intEls==intChks);
}
pdsnet 2009-03-30
  • 打赏
  • 举报
回复

<asp:TemplateField HeaderText="全选">
<HeaderTemplate>
<asp:CheckBox ID="Checkall" runat="server" onclick="javascript:selectall(this);" />全选
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="Checksingle" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<script type="text/javascript">
function selectall(chkcontrol)
{
var chkall=chkcontrol;
State=chkall.checked;
elem=chkall.form.elements;
for (i=0;i<elem.length;i++)
{
if(elem[i].type=="checkbox" && elem[i]!=chkall.id)
{
if(elem[i].checked!=State)
{
elem[i].click();
}
}
}
}
</script>



protected void Delall_Click(object sender, EventArgs e)
{
int intCount = this.GridView1.Rows.Count;
for (int i = 0; i < intCount; i++)
{
CheckBox CheckSingle = this.GridView1.Rows[i].Cells[0].FindControl("CheckSingle") as CheckBox;
if (CheckSingle.Checked)
{
}
}
}
marssongxs 2009-03-30
  • 打赏
  • 举报
回复
//全选按钮 chk2为全选的CheckBox chk1是gridview中的 CheckBox
protected void chk2_CheckedChanged(object sender, EventArgs e)
{
for (int i = 0; i < gv.Rows.Count; i++)
{
CheckBox cbox = (CheckBox)gv.Rows[i].FindControl("chk1");
if (chk2.Checked == true)
{
cbox.Checked = true;
}
else
{
cbox.Checked = false;
}
}
}
// 删除
for (int i = 0; i < gv.Rows.Count; i++)
{
CheckBox cbox = (CheckBox)gv.Rows[i].FindControl("chk1");
if (cbox.Checked == true)
{
File.Delete(filePath); //filePath 为要删除文件的路径
}
}





heyihong0208 2009-03-30
  • 打赏
  • 举报
回复
用js在前台就可以实现了,很简单的!我一直都这样做的。
如果你需要,可以找我要代码。QQ:250050882
Teng_s2000 2009-03-30
  • 打赏
  • 举报
回复
up
hhxx_cj 2009-03-30
  • 打赏
  • 举报
回复
<script language="javascript" type="text/javascript">
function GetAllCheckBox(chbAll){
var items = document.getElementsByTagName("input");
for(i=0; i<items.length;i++){
if(items[i].type=="checkbox"){
items[i].checked = chbAll.checked;
}
}
}
</script>


<asp:GridView ID="gvLink" runat="server" AllowPaging="True" AutoGenerateColumns="False"
DataKeyNames="LinkID" DataSourceID="odsLink" Font-Size="12px" Width="750px">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<input id="chbAll" type="CHECKBOX" runat="Server" onclick="GetAllCheckBox(this)"/>全选
</HeaderTemplate>
<ItemTemplate>
<input type="CHECKBOX" id="cbSlect" runat="Server" value='<%#Eval("LinkID")%>'/>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>

</Columns>
</asp:GridView >
E_wait 2009-03-29
  • 打赏
  • 举报
回复
全选就用JS实现,网上很多例子,楼上的也都给出了.
不知所谓的不定选是什么意思?
larry_seven 2009-03-29
  • 打赏
  • 举报
回复
楼主可以说详细点吗?如果选择后就删除那要写checkbox_changed事件,如果选择后删除那就写在GridView的什么Row事件中,然后判断删除按钮的CommandName,checkbox的选中用js实现比较简单
<input id="controlCheck" type="checkboc" OnCheckedChanged="onchange(this)" />
<script >
function onchange(controlCheck)
{
var items = document.getElementsByTagName("input");
for(var i=0;i <item.length;i++)
{
if(items[i].type=="checkbox")
{
items[i].checked = controlCheck.checked;
}
}
}
</script>
jfd198512 2009-03-29
  • 打赏
  • 举报
回复
顶 LZ!! 学习~
java_renyusheng 2009-03-29
  • 打赏
  • 举报
回复
简单的就是直接拿别人代码用,没有更简单的了
ikelvin 2009-03-29
  • 打赏
  • 举报
回复
checkbox js
实现
阿彪兄 2009-03-29
  • 打赏
  • 举报
回复
gridview模板列加checkbox
qq348043275 2009-03-29
  • 打赏
  • 举报
回复
<input id="controlCheck" type="checkboc" OnCheckedChanged="onchange(this)" /> 这个是全选的checkbox
qq348043275 2009-03-29
  • 打赏
  • 举报
回复
用javascript
<input id="controlCheck" type="checkboc" OnCheckedChanged="onchange(this)" />
<script >
function onchange(controlCheck)
{
var items = document.getElementsByTagName("input");
for(var i=0;i<item.length;i++)
{
if(items[i].type=="checkbox")
{
items[i].checked = controlCheck.checked;
}
}
}
</script>
大体思路就是这样,我这里没有编辑器...或许有些错误....试试看吧..
嘴哥臭鼬 2009-03-29
  • 打赏
  • 举报
回复
加checkbox用js实现,这种方法简单不?我们一直这么做

62,267

社区成员

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

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

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

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