zoukankan      html  css  js  c++  java
  • 给GridView编辑列按钮添加客户端提示信息

      看到题目是不是觉得有点老掉牙啊?这个好像是在asp.net 1.1时代就有人开始研究的东西,怎么现在还在拿出来说啊?是有点老套,写在这里纯粹只是为了做个笔记,为以后提供点方便。

      在使用GridView或者ListView等类似的数据绑定控件时,都有编辑列,我们可以在编辑列中指定CommandName以确定按钮点击后绑定控件执行何种操作,如常用的“编辑”、“删除”等,相应的CommandName为Update,Delete。一般情况下,我们有两种方法可以实现这个功能,如下:

    <asp:LinkButton ID="btnDelete" runat="server" Text="删除" OnClientClick="javascript:return confirm('确定删除?');"  CommandName="Delete" />

      直接引入控件,并通过CommandName告诉绑定控件当被点击时执行何种操作。在这种情况下我们添加客户端提示信息是比较容易的,直接通过OnClientClick事件,添加一个confirm函数即可。

    <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" DeleteText="删除" EditText="编辑" HeaderText="操作">
        
    <ItemStyle Width="100px" HorizontalAlign="Center" />
    </asp:CommandField>

      像这种就是直接使用了绑定控件中提供的编辑列,你可以指定编辑列中要显示那些内容,如“编辑”或“删除”等。在这种情况下我们如何添加客户端提示信息呢?只能通过绑定事件来实现了。下面是一个例子。

    protected void gvCate_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        
    if (e.Row.RowType == DataControlRowType.DataRow)
        {
            
    if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
            {
                ((LinkButton)e.Row.Cells[
    5].Controls[2]).OnClientClick = "javascript:return confirm('这将同时删除该分类下的所有商品,是否继续?')";
            }

            
    // TODO something
        }
    }

      e.Row.RowState共有五种类型,分别是Alternate,Edit,Insert,Normal,Selected,分别代表了各种不同状态下的Row。e.Row.Cells[5]代表的是当前第六列,下标值可根据实际情况修改。Controls[2]表示的正是“删除”按钮所在的单元,如果前面没有“编辑”单元,则这里的下标应当是1,可根据实际情况来指定。

      记录以备日后查询
  • 相关阅读:
    python3 简单爬虫
    springmvc的一个错误
    全栈技术经理——产品管理:产品管理那些事01
    全栈技术经理——团队管理:每周问问你的团队这这些问题 V1.0
    全栈技术经理——自我管理:读《有效管理的五大兵法》有感
    全栈技术经理——团队管理:指导中层管理者日常行动指南
    【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)
    CentOS7环境下SSH端口修改笔记
    CentOS7下挂载硬盘笔记
    权重轮询调度算法(WeightedRound-RobinScheduling)-Java实现3
  • 原文地址:https://www.cnblogs.com/jaxu/p/1609419.html
Copyright © 2011-2022 走看看