gridview如何实现全选/不定选 删除 我看了个方法很麻烦..有没简单一点的..谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 加checkbox用js实现,这种方法简单不?我们一直这么做 用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> 大体思路就是这样,我这里没有编辑器...或许有些错误....试试看吧.. <input id="controlCheck" type="checkboc" OnCheckedChanged="onchange(this)" /> 这个是全选的checkbox 楼主可以说详细点吗?如果选择后就删除那要写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> //全选按钮 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 为要删除文件的路径 } } <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) { } } } <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);} <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 > 用js在前台就可以实现了,很简单的!我一直都这样做的。如果你需要,可以找我要代码。QQ:250050882 求Web视频技术,定点读取定点播放 请教一个关于时间的小问题,请各位指点 在aspx页面的工具箱中,有web窗体控件和html控件,有什么区别吗? .NET 如何:从A域名指向到B网站时,地址栏仍显示A域名. 服务器端出了问题,aspx页面不响应,大家帮我分析分析 借这里的人气一用。 <input>的值不显示,firebug调试有值的? 多表查询绑定后,实现表头修改的问题 求救,方法无法处理事件,因为他们不具相同的签名。 带参数sql语句里的通配符问题? 月报表 ---显示某年某月的的数据 iis asp.net 问题
<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>
大体思路就是这样,我这里没有编辑器...或许有些错误....试试看吧..
<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>
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 为要删除文件的路径
}
}
<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)
{
}
}
}
<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);
}
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 >
如果你需要,可以找我要代码。QQ:250050882