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滑动和按钮事件触发问题,但是不能所有的情况,最近几天一直在想这个问题,今天有一个比较好的解决思路,最终应用在项目里面效果也很好,首先说明一下功能: ...
随机推荐
- NOR FLASH与NAND FLASH的区别
NOR和NAND是现在市场上两种主要的非易失闪存技术.Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面.紧接着,1989年,东芝公司发表了 ...
- poj3669 Meteor Shower(BFS)
题目链接:poj3669 Meteor Shower 我只想说这题WA了后去看讨论才发现的坑点,除了要注意原点外,流星范围题目给的是[0,300],到302的位置就绝对安全了... #include& ...
- 在jsp页面中实现格式化数字,百分比,货币
当时的要求是在jsp页面中计算百分比 实现方法 1.引入Jstl的fmt指令 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" ...
- cmd扩展路径
在命令行窗口中,输入for /? 即可得到如下参数解释==== 对一组文件中的每一个文件执行某个特定命令. FOR %variable IN (set) DO command [command-par ...
- ASP.NET-【缓存】-使用ASP.NET缓存
缓存一个List 泛型结构 1.显示 var s = Get("personsl"); foreach (var item in s) { Response.Write(item. ...
- Jquery.Page.js 分页插件的使用
1.简单直接贴代码 需要引用以下样式和脚本 <link href="~/Scripts/Page/pager.css" rel="stylesheet" ...
- Hibernate的generator属性之意义
Hibernate的generator属性之意义 本文讲述Hibernate的generator属性的意义.Generator属性有7种class,本文简略描述了这7种class的意义和用法. Hib ...
- QPS
你想建设一个能承受500万PV/每天的网站吗? 博客分类: 移动行业 PV 转自:http://elf8848.iteye.com/blog/967049 你想建设一个能承受500万PV/每天的网站 ...
- 转: JSP中include指令和include动作的区别
include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如果 ...
- 一模 (3) day2
第一题: 题目大意:和day1一样,给出m个小于n的数,求出出现次数大于m div 2 的数. 数据范围加大,1<=n<=2^31 1<=m<=3000000 解题过程: ...