GridView按钮事件
1.html代码
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<div style="width: 129px">
<asp:Button ID="btnPass" runat="server" Text="通过" OnCommand="pass" CommandArgument="<%# ((GridViewRow)Container).RowIndex %>" />
<asp:Button ID="btnRefuse" runat="server" Text="不通过" OnCommand="refuse" CommandArgument="<%# ((GridViewRow)Container).RowIndex %>" />
</div>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:Button ID="btnDelete" Width="60" runat="server" Text="删除" CommandName="Delete" />
</ItemTemplate>
</asp:TemplateField>
2.后台代码
protected void gvAuthManagement_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int index = e.RowIndex;
string openId = ((Label)gvAuthManagement.Rows[index].Cells[].FindControl("Label4")).Text;
AuthorizationInfo authInfo = new AuthorizationInfo { OpenId = openId };
AuthorizationBiz.Delete(authInfo);
InfoList = AuthorizationBiz.Query(new AuthorizationInfo());
Bind(InfoList);
} //给微信用户授权
protected void pass(object sender, CommandEventArgs e)
{
int index = Convert.ToInt32(e.CommandArgument);
string lienceplate = ((Label)gvAuthManagement.Rows[index].Cells[].FindControl("Label1")).Text;
string status = ((Label)gvAuthManagement.Rows[index].Cells[].FindControl("Label6")).Text;
AuthorizationInfo authInfo = new AuthorizationInfo { LiencePlateNumber = lienceplate };
IList<AuthorizationInfo> list = AuthorizationBiz.Query(authInfo); //微信客服消息回复通过
string access_token = AccessTo.GetExistAccessToken();
string content = "{ \"touser\":\"" + list[].OpenId + "\",\"msgtype\":\"text\",\"text\":{ \"content\":\"亲\"}}";
string url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + access_token;//json格式的数据
RequestHelper.SendPost(content, url, "application/json");
if (status != "已授权")
{
authInfo.Status = "已授权";
AuthorizationBiz.Update(authInfo);
}
InfoList = AuthorizationBiz.Query(new AuthorizationInfo());
Bind(InfoList);
} //拒绝微信用户授权
protected void refuse(object sender, CommandEventArgs e)
{
int index = Convert.ToInt32(e.CommandArgument);
string lienceplate = ((Label)gvAuthManagement.Rows[index].Cells[].FindControl("Label1")).Text;
string status = ((Label)gvAuthManagement.Rows[index].Cells[].FindControl("Label6")).Text;
AuthorizationInfo authInfo = new AuthorizationInfo { LiencePlateNumber = lienceplate };
IList<AuthorizationInfo> list = AuthorizationBiz.Query(authInfo); //微信客服消息回复通过
string access_token = AccessTo.GetExistAccessToken();
string content = "{ \"touser\":\"" + list[].OpenId + "\",\"msgtype\":\"text\",\"text\":{ \"content\":\"您的微信号授权申请被拒绝\"}}";
string url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + access_token;//json格式的数据
RequestHelper.SendPost(content, url, "application/json");
if (status != "未授权")
{
authInfo.Status = "未授权";
AuthorizationBiz.Update(authInfo);
}
InfoList = AuthorizationBiz.Query(new AuthorizationInfo());
Bind(InfoList);
}
二、
1)html代码
<asp:TemplateField HeaderText="编辑" ItemStyle-Width="80">
<ItemTemplate>
<asp:Button ID="btn_edit" runat="server" Text="编辑" CommandName="Edit" ForeColor="#1C94C4"></asp:Button>
</ItemTemplate>
<EditItemTemplate>
<asp:Button ID="btn_update" runat="server" CommandName="Update" Text="更新" /><%--OnClientClick="update()"--%>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="删除" ItemStyle-Width="80">
<ItemTemplate>
<asp:Button ID="btn_delete" runat="server" Text="删除" CommandName="Delete" ForeColor="#1C94C4"></asp:Button>
</ItemTemplate>
<EditItemTemplate>
<asp:Button ID="btn_cancel" runat="server" CommandName="Cancel" Text="取消" />
</EditItemTemplate>
</asp:TemplateField>
2).
//行删除
protected void gvCenterMangerment_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//此处只实现了单行的删除
int index = e.RowIndex;
string centerName = ((Label)gvCenterMangerment.Rows[index].Cells[].FindControl("Label2")).Text;
ContactInfo contactInfo = new ContactInfo { CenterName = centerName };
try
{
ContactBiz.Delete(contactInfo); }
catch (Exception ex)
{
Logger.Write("中心名称为:" + centerName + "的记录删除失败!原因:" + ex.Message);
throw ex;
}
InfoList = ContactBiz.Query(new ContactInfo());
Bind(InfoList);
} //行编辑
protected void gvCenterMangerment_RowEditing(object sender, GridViewEditEventArgs e)
{
try
{
gvCenterMangerment.EditIndex = e.NewEditIndex;
InfoList = ContactBiz.Query(new ContactInfo());
Bind(InfoList);
}
catch (Exception ex)
{
Logger.Write("中心管理行编辑失败" + ex.Message);
throw ex;
} } //行编辑修改数据
protected void btnModify_Click(object sender, GridViewUpdateEventArgs e)
{
int index = e.RowIndex;
ContactInfo contactInfo = new ContactInfo();
// System.Text.RegularExpressions.Regex.IsMatch("","");
//Regex.IsMatch(contactInfo.PhoneNumber,"^1[3456789]\\d{9}$|^0\\d{2,3}-?\\d{7,8}$");
contactInfo.CenterName = ((Label)gvCenterMangerment.Rows[index].Cells[].FindControl("Label2")).Text;
contactInfo.Name = ((TextBox)gvCenterMangerment.Rows[index].Cells[].FindControl("TextBox3")).Text;
if (contactInfo.Name == "")
{
ScriptManager.RegisterStartupScript(UpdatePanel1, GetType(), System.DateTime.Now.Ticks.ToString(), "alert('*联系人不能为空*');", true);
return;
}
contactInfo.PhoneNumber = ((TextBox)gvCenterMangerment.Rows[index].Cells[].FindControl("TextBox4")).Text;
if (contactInfo.PhoneNumber == "")
{
ScriptManager.RegisterStartupScript(UpdatePanel1, this.GetType(), System.DateTime.Now.Ticks.ToString(), "alert('*联系方式不能为空*');", true);
return;
}
else
{
if (!Regex.IsMatch(contactInfo.PhoneNumber, "^1[3456789]\\d{9}$|^0\\d{2,3}-?\\d{7,8}$"))
{
ScriptManager.RegisterStartupScript(UpdatePanel1, GetType(), System.DateTime.Now.Ticks.ToString(), "alert('*联系方式格式错误*');", true);
return;
}
}
contactInfo.Address = ((TextBox)gvCenterMangerment.Rows[index].Cells[].FindControl("TextBox5")).Text;
if (contactInfo.Address == "")
{
ScriptManager.RegisterStartupScript(UpdatePanel1, GetType(), System.DateTime.Now.Ticks.ToString(), "alert('*地址不能为空*');", true);
return;
}
ContactBiz.Update(contactInfo);
gvCenterMangerment.EditIndex = -;
InfoList = ContactBiz.Query(new ContactInfo());
Bind(InfoList);
errorWarning.Text = "";
} //行编辑取消
protected void gvCenterMangerment_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
gvCenterMangerment.EditIndex = -;
InfoList = ContactBiz.Query(new ContactInfo());
Bind(InfoList);
}
三、
1)html代码
<asp:ButtonField ButtonType="Button" CommandName="observe" HeaderText="操作" Text="查看" />
2)
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "observe")
{
try
{
int index = Convert.ToInt32(e.CommandArgument);
string LiencePlateNumber = ((Label)GridView1.Rows[index].Cells[].FindControl("label2")).Text.ToString().Trim();
string CreateTime = ((Label)GridView1.Rows[index].Cells[].FindControl("label8")).Text.ToString().Trim();
string url = "../Management/ExDetails.html?LiencePlateNumber=" + LiencePlateNumber + "&CreateTime=" + CreateTime;
string js = "window.open(\"../Management/ExDetails.html?LiencePlateNumber=" + LiencePlateNumber + "&CreateTime=" + CreateTime + "\",\"_blank\")";
ScriptManager.RegisterStartupScript(UpdatePanel1, GetType(), System.DateTime.Now.Ticks.ToString(), js, true);
}
catch (Exception ex)
{
Logger.Write("后台查看异常详情失败,原因:" + ex.Message);
throw ex;
} }
}
GridView按钮事件的更多相关文章
- asp.net中父子页面通过gridview中的按钮事件进行回传值的问题
这两天写BS程序,遇到父子页面传值的问题,以前没写过web系统,用了几天时间才将问题解决,总结下记录下来: 问题描述: 父页面A中有一个gridview,每行6个列,有5列中均有一个按钮,单击按钮,会 ...
- ngui中 代码调用按钮事件(后来改成了按钮绑定键盘..)
ngui中 代码调用按钮事件 好烦人啊这个问题, 我弄完发上来 这个问题解决了一半 发现可以用 按钮绑定来解决这个问题,并且更安全方便快速 直接在按钮上添加一个 key binding 指定按键 搞定 ...
- MVC中使用内建的HTML辅助方法产生表单元素提交表单与button按钮事件的陷阱
网站模板页有个登陆的退出按钮,当点击时跳转到登陆页面. <button onclick="logout()" >退出</button> $("#l ...
- Java Hello World例子和添加按钮事件与功能
新建android工程,然后默认“下一步”即可完成创建: 2.添加Button 3.在src的MainActivity.java添加以下红色代码 import android.support.v7.a ...
- JS调用水晶报表打印翻页按钮事件
默认的水晶报表打印按钮.翻页按钮太小,并且样式不好调整,考虑自己做一个按钮,然后调用水晶报表的按钮事件. 在实际操作中发现可以在.net按钮的服务器端事件中调用翻页方法: CrystalReportV ...
- ASP.NET多个Button的页面,回车执行按钮事件(转)
主要有两种实现方法分别是:JavaScript的方法与Panel的方法 一.JavaScript的方法 ①单输入框(文本框)单按钮的实现方法 以下功能实现:在输入框中输入内容之后,按回车键就执行按钮事 ...
- asp.net中用回车代替按钮事件
第一步,先编写简单的页面代码,这里我们只需要一个按钮就足够了.当然,还有按钮事件. <html> <head> <title>测试绑定enter</title ...
- Android开发系列之按钮事件的4种写法
经过前两篇blog的铺垫,我们今天热身一下,做个简单的例子. 目录结构还是引用上篇blog的截图. 具体实现代码: public class MainActivity extends Activity ...
- Android中Touch事件分析--解决HorizontalScrollView滑动和按钮事件触发问题
之前写过关于HorizontalScrollView滑动和按钮事件触发问题,但是不能所有的情况,最近几天一直在想这个问题,今天有一个比较好的解决思路,最终应用在项目里面效果也很好,首先说明一下功能: ...
随机推荐
- 131. 132. Palindrome Partitioning *HARD* -- 分割回文字符串
131. Palindrome Partitioning Given a string s, partition s such that every substring of the partitio ...
- iOS控制器瘦身-面向超类编程
今天写这篇文章的目的,是提供一种思路,来帮助大家解决控制器非常臃肿的问题,对控制器瘦身. 滴滴 老司机要开车了 如果手边有项目,不妨打开工程看一下你的控制器代码有多少行,是不是非常多?再看一下tabl ...
- linux查看是否已安装GCC及安装GCC
输入:gcc -v;如果提示未找到命令即表示没有安装 使用:yum install gcc即可
- BZOJ3238 [Ahoi2013]差异
首先把后缀数组和height数组都搞出来... 然后用两个单调栈维护$[l, r]$表示对于一个点$x$,满足$height[x] \le height[l..x] \ \&\&\ ...
- BroadcastReceiver的实例----基于Service的音乐播放器之二
该程序的后台Service会在播放状态发生改变时对外发送广播(广播将会激发前台Activity的BroadcastReceiver):它也会采用BroadcastReceiver监听来自前台Activ ...
- 终于!Linaro 加盟 Zephyr 项目
导读 为物联网构建实时操作系统的开源协作项目 Zephyr 项目宣布,Linaro 有限责任公司以白金会员的身份加盟该项目.Linaro是一家为 ARM 架构开发开源软件的协作工程组织,也是全球性机构 ...
- [转载]java NIO详解
Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API.下面的文章写的很详细,还配有插图,有助于深入学习和理解java NIO 文 ...
- 第一次编辑JAVA
其实就是根据例题来进行编辑,但并不是一次就对了的,有大小写输入出错的问题,有漏掉标点符号的问题,值得注意的是,所有的标点符号都需要是在英文输入法状态下输入的,最后的问题——例题所用的C盘给我们带来了系 ...
- hdu 4630 No Pain No Game
http://acm.hdu.edu.cn/showproblem.php?pid=4630 离散化+树状数组 将数组 *a 从后向前遍历 遍历到 a[x] 的时候 再枚举a[x]的约数 假如 约数 ...
- 在虚拟机上安装Ubutu完成后卡在VM Tool的安装上
今天在虚拟机上装Ubuntu之后,卡在了VM Tool的安装页,点击回车后可以进入命令行模式.并出现如下提示“Vmware Easy Install PLEASE WAIT! VMware Tools ...