点击 Button触发事件将GridView1 CheckBox勾选的行添加到GridView2中
有时候想实现一个CheckBox选取功能,但是很多细节不是很清楚
相信大家都有遇到类似的情况,直接看代码,如下:
前端代码GridView1,CheckBox控件设置
<asp:GridView ID="GridView1" runat="server" Height="2px" Width="720px" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="1" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" OnRowDataBound="GridView1_RowDataBound" OnRowDeleting="GridView1_RowDeleting" AutoGenerateColumns="False" PageSize="8" >
<RowStyle ForeColor="#000066" />
<FooterStyle BackColor="White" ForeColor="#000066" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked="false" />
<%--<asp:Label ID="lbformid" runat="server" Visible="false" Text='<%# Eval("formid") %>'></asp:Label>--%>
</ItemTemplate>
<HeaderTemplate>
<input type="checkbox" id="ChkHead" onclick="CheckAll3(this)" title="選擇全部" /><%--加上checked可自動勾選--%>
</HeaderTemplate>
<HeaderStyle Width="20px" />
<ItemStyle Width="20px" />
</asp:TemplateField>
<asp:BoundField DataField="data" HeaderText="日期(data)" ReadOnly="True" />
<asp:BoundField DataField="users" HeaderText="姓名(users)" SortExpression="姓名" />
<asp:BoundField DataField="user_name" HeaderText="賬號(user_name)" />
<asp:BoundField DataField="user_email" HeaderText="郵箱(user_email)" />
<asp:BoundField DataField="mony" HeaderText="金額(mony)" />
</Columns>
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" CssClass="Freezing" />
后台代码
protected void Button3_Click(object sender, EventArgs e)
{
GridView2.DataSource = null; //數據定義成空值
GridView2.DataBind();
if (GridView1.Rows.Count < 1) //GridView1控件數據小於1行,執行該語句
{
MessageBox.Text = "請先查詢資料再匯入";
MessageBox.ForeColor = System.Drawing.Color.Red; //獲取背景顏色
return;
}
DataTable dte = new DataTable();
dte.Columns.Add("data", typeof(string)); //獲取屬於該表列的集合
dte.Columns.Add("users", typeof(string));
dte.Columns.Add("user_name", typeof(string));
dte.Columns.Add("user_email", typeof(string));
dte.Columns.Add("mony", typeof(string));
DataRow dr;
////建立相同架構的新數據
//dr["data"] = "data";
//dr["users"] = "";
//dr["user_name"] = "";
//dr["user_email"] = "";
//dr["mony"] = "";
int j=0;
for (int i = 0; i < GridView1.Rows.Count; i++)
{
if (((CheckBox)GridView1.Rows[i].FindControl("CheckBox1")).Checked) //默認是true(勾起)
{
dr = dte.NewRow();//創建具有相同架構表的新數據
dr["data"] = GridView1.Rows[i].Cells[1].Text.ToString(); //獲取GridView1中列的位置,將數據綁定到建立的架構表相同的列
dr["users"] = GridView1.Rows[i].Cells[2].Text.ToString();
dr["user_name"] = GridView1.Rows[i].Cells[3].Text.ToString();
dr["user_email"] = GridView1.Rows[i].Cells[4].Text.ToString();
dr["mony"] = GridView1.Rows[i].Cells[5].Text.ToString();
dte.Rows.Add(dr);
j++;//增益性
}
}
if (j<=0) //當excel中的MHour(月加班上限)小於或等於GridView1控件中第5行時,將判斷“時數必須大於已用時數!!”
{
MessageBox.Text = dte + "請選擇一項";
MessageBox.ForeColor = System.Drawing.Color.Red;
return;
}
GridView2.DataSource = dte;
GridView2.DataBind();
}
点击 Button触发事件将GridView1 CheckBox勾选的行添加到GridView2中的更多相关文章
- jquery checkbox勾选取消勾选的诡异问题
jquery checkbox勾选/取消勾选的诡异问题jquery checkbox勾选/取消勾选的诡异问题 <form> 你爱好的运动是?<input type=&q ...
- 用DIV遮罩解决checkbox勾选无效的问题
在前端开发的过程中,遇到一种情况,需要勾选,为了用户的操作便捷就将click事件放到了DIV上.(其中使用了knockout.js) 代码大概如下: <div id="one" ...
- 为何给CheckBox设置了checked属性还是没有勾选,行内样式都显示了checked
为何给CheckBox设置了checked属性还是没有勾选,行内样式都显示了checked 正常情况下我们设置给CheckBox一个checked属性后一般都会选中 然而我今天在做案例的时候却遇到了类 ...
- asp.net 翻页时用ViewState保存上一页checkbox勾选的值
/// <summary> /// checkbox勾选取消勾选事件 /// </summary> /// <param nam ...
- 设置checkbox选中,设置radio选中,根据值设置checkbox选中,checkbox勾选
设置checkbox选中,设置radio选中,根据值设置checkbox选中,checkbox勾选 >>>>>>>>>>>>&g ...
- 获取checkbox勾选的id
需求描述:做批量删除或者批量修改的时候需要获得多个id,根据checkbox勾选来获取对应的d 两种方法: //html代码<table id="table1"> &l ...
- 点击button触发onclick事件判空后依旧自动跳转
这是一个前端的问题. 其中判断字符串为空的脚本代码是这样的: var remark = $("#Remark").val(); //判空.注意:var reg = /空格/g; v ...
- ASP.NET 多次点击button后事件执行多次 并发解决 频繁操作解决办法
首先让我们体验一下频繁操作: 1)打开项目,在后台aspx.cs等服务器页面,设置断点. 2)点击页面按钮 3)调试开始进入断点,然后重复点击页面按钮 4)服务器第一次事件已经处理完毕,调试再次进入了 ...
- js点击空白处触发事件
我们经常会出现点击空白处关闭弹出框或触发事件 <div class="aa" style="width: 200px;height: 200px;backgroun ...
随机推荐
- 零基础学Python--------第3章 流程控制语句
第3章 流程控制语句 3.1程序的结构 计算机在解决某个具体问题时,主要有3种情况,分别是顺序执行所有的语句.选择执行部分语句和循环执行部分语句.程序设计中的3种基本结构为顺序结构.选择结构和循环结构 ...
- css,解决文字与图片对齐的问题
测试代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- 全新定义!免费开源ERP平台如何玩转工业互联网
简述 IoT Box通过Wifi.蓝牙.USB.网线等方式连接设备.IoT再通过互联网连接到Odoo服务器 Odoo的各种应用通过IoT操作各种设备.例如,PoS应用通过IoT操作小票打印机.银行刷卡 ...
- Cesium 实现粒子效果贴地(伪)
有时我们面对这样的需求,需要在地面上放一个周期性放大缩小的标记,可以使用粒子效果实现,但是粒子效果图片很难贴地(如果你知道怎么做,欢迎分享,期待有人打我脸),我只能变通实现一个看似贴地但实际没有贴地的 ...
- python进程、进程池(二)代码部分
第一种创建进程的方式: from multiprocessing import Process def f(name): print(name,"在子进程") if __name_ ...
- 开源干货!!!.NET Core + JWT令牌认证 + Vue.js(iview-admin) 通用动态权限(RBAC)管理系统框架[DncZeus]开源啦!!!
DncZeus 前言 关于 DncZeus DncZeus = Dnc + Zeus "Dnc"--.Net Core 的缩写: "Zeus"--中文译为宙斯, ...
- web server性能优化浅谈
作者:ZhiYan,Jack47 转载请保留作者和原文出处 Update: 2018.8.8 在无锁小节增加了一些内容 性能优化,优化的东西一定得在主路径上,结合测量的结果去优化.不然即使性能再好,逻 ...
- Scala的类层级讲解
Scala的类层级 Scala里,每个类都继承自通用的名为Any的超类. 因为所有的类都是Any的子类,所以定义在Any中的方法就是"共同的"方法:它们可以被任何对象调用. Sca ...
- Kubernetes 笔记 09 DaemonSet 我是一只看门狗
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...
- RecyclerFullyManagerDemo【ScrollView里嵌套Recycleview的自适应高度功能】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 对于Recyclerview自己的LinearLayoutManager和GridLayoutManager,在版本23.2.0之后 ...