GridView中ButtonField列的按钮如何能够绑定一个Confirm()?
我在GridView中加入一个ButtonField列,内有按钮[删除],希望能够绑定一个Confirm(),点击确定后能执行服务器后台的删除代码,点击取消希望不执行删除代码看网上有人说用
l_Num_Of_Supports是GridView中显示的记录数
for (int i = 0; i < l_Num_Of_Supports; i++)
{
     Button l_Del_Supp_Button = (Button)GridView2.Rows[i].Cells[8].Controls[0];
     l_Del_Supp_Button.Attributes.Add("onclick", "if(!window.confirm('確定要刪除嗎?'))");
}试用后发觉无效
请有经验的大哥教我!!       

解决方案 »

  1.   

    通常是转换为TemplateField,然后OnClientClick="return confirm('确定要删除吗?')"
      

  2.   

    请问怎么把ButtonField转换为TemplateField呢?
      

  3.   

    请问怎么把ButtonField转换为TemplateField呢?
      

  4.   

    你在GridView中增加一个TemplateField,然后在TemplateField中放一个Button就行了
      

  5.   

    用鼠标操作。你自己仔细看看。编辑列的时候右下角
    或者用代码
    <asp:TemplateField ...>
      <ItemTemplate>
          <asp:Button ID="..." runat="server" OnClientClick="...
    ...
      

  6.   


    转化为TempleteField后确实绑定了Confirm,但是原本在GridViewCommandEventArgs处理函数中用e.CommendArgument获取行号的,现在获取不了了,获取出来为"",请问如何解决
      

  7.   

    加入 CommandArgument='<%# Container.DisplayIndex %>' 解决了!感谢namhyuk 
    不过现在还有一个大问题如果不绑定 OnClientClick="return confirm('确定要删除吗?')" 
    那么可以正确触发 GridViewCommandEventArgs 的处理函数 
    但是如果绑定了confirm就不触发了我发觉如果写成 
    OnClientClick="return confirm('确定要删除吗?')" 
    OnClick="Button1OnClick" 
    那么他可以在点击确定后执行Button1OnClick()函数,但是在这里面又无法获得行号,行号只能在处理GridViewCommandEventArgs 时才能通过CommandArgument获得这可怎么办呢?~~~~~
      

  8.   

    我自己感觉你可以在ROWDATABOUND中手动添加一个隐藏域,用来放每行的行号 按钮点击的时候传递的是隐藏域的值