蜗牛,在赛跑

--努力去改变吧
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

在DataList中加入删除确认

Posted on 2007-03-21 14:28  body  阅读(531)  评论(0)    收藏  举报
myReader=GetData.GetDataReaderBySprocs("GetServiceGroup",strWhere);  
   
  //显示当前类别的数据  
  dlistGroup.DataSource=myReader;  
  dlistGroup.DataBind();  
  myReader.Close();  
   
  ***************以下方法都不能*********  
   
  //给删除增加确认  
  for(int   i=0;i<dlistGroup.Items.Count;i++)  
  {  
  LinkButton   myBtn=(LinkButton)   dlistGroup.Items[i].FindControl("btnDelete");  
  myBtn.Attributes.Add("onclick","return   confirm('确认删除吗?');");  
  }  
   
   
   
  //给删除增加确认  
  foreach(DataListItem   item   in   dlistGroup.Items)  
  {  
  LinkButton   myBtn=(LinkButton)   item.FindControl("btnDelete");  
  myBtn.Attributes.Add("onclick","return   confirm('确认删除吗?');");  
  }  
   
  ****************************  
  网页代码如下。  
  <ItemTemplate>  
  <%#   DataBinder.Eval(Container.DataItem,   "GroupName")   %>  
  <asp:LinkButton   Runat="server"   CommandName="edit"   ID="btnEdit">修改</asp:LinkButton>  
  </ItemTemplate>  
  <EditItemTemplate>  
  <asp:TextBox   Runat=server   ID="dlistGroupName"   Text='<%#   DataBinder.Eval(Container.DataItem,   "GroupName")   %>'>  
  </asp:TextBox>  
  <asp:LinkButton   Runat="server"   CommandName="update"   ID="btnUpdate">更新</asp:LinkButton>  
  <asp:LinkButton   Runat="server"   CommandName="cancel"   ID="btnCancel">取消</asp:LinkButton>  
  <asp:LinkButton   Runat="server"   CommandName="delete"   ID="btnDelete">删除</asp:LinkButton>  
  </EditItemTemplate>  
   
  谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!

---------------------------------------------------------------
最简洁的办法:  
   
   
  <asp:ButtonColumn   Text="&lt;div   id=&quot;de&quot;   onclick=&quot;JAVAScript:return   confirm('确定删除吗?')&quot;&gt;删除&lt;/div&gt;"  
  CommandName="Delete"></asp:ButtonColumn>  
   
 
---------------------------------------------------------------
foreach(Control   con   in   e.Item.Cells[4].Controls)  
  {  
  if(con.ToString()=="System.Web.UI.WebControls.DataGridLinkButton")  
  {  
  System.Web.UI.WebControls.LinkButton   lbtn=(System.Web.UI.WebControls.LinkButton)con;  
  lbtn.Attributes.Add("onclick",   "return   confirm('您确定删除这条记录吗?')");  
  }  
  }  
   
  注意单元格  
  还有,一般情况下还可以不用循环
---------------------------------------------------------------
response.write("<script   language='JAVAscript'>alert('删除');</script>")
---------------------------------------------------------------
刪除按鈕上的提示  
   
  private   void   grdProject_ItemDataBound(object   sender,   DataGridItemEventArgs   e)  
  {  
  if   ((e.Item.ItemType   ==   ListItemType.Item)   |   (e.Item.ItemType   ==   ListItemType.AlternatingItem))  
  {  
  //   刪除按鈕上的提示部分  
  e.Item.Cells[10].Attributes.Add("onclick",   "return   confirm('确定删除吗?');");  
  }  
  }
---------------------------------------------------------------
Private   Sub   DataGrid1_DeleteCommand(ByVal   source   As   System.Object,   ByVal   e   As   System.Web.UI.WebControls.DataGridCommandEventArgs)   Handles   DataGrid1.DeleteCommand  
   
                  Dim   sqlstr   As   String   =   "delete   from   表   where   id   =   '"   +   e.Item.Cells(0).Text   +   "'"  
                  modify(sqlstr)  
                  BindData()  
   
          End   Sub  
          Private   Sub   DataGrid1_ItemCreated(ByVal   sender   As   Object,   ByVal   e   As   System.Web.UI.WebControls.DataGridItemEventArgs)   Handles   DataGrid1.ItemCreated  
                  Dim   Listtype   As   ListItemType  
                  Listtype   =   e.Item.ItemType  
   
                  If   (Listtype   =   ListItemType.Item   Or   Listtype   =   ListItemType.AlternatingItem)   Then  
   
                          Dim   DeleteButton   As   LinkButton   =   e.Item.Cells(11).FindControl("cmdDel")  
   
                          DeleteButton.Attributes.Add("OnClick",   "return   confirm('是否确认删除该数据   ');")  
   
                  End   If  
          End   Sub  
  Public   Sub   modify(ByVal   sql   As   String)  
                  Dim   conn   As   New   SqlConnection  
                  Dim   cmd   As   New   SqlCommand  
                  Dim   ds   As   New   DataSet  
                  conn.ConnectionString   =   connstr  
   
                  '   Dim   sqlstr   As   String   =   "insert   into   表(coupon_code,money,month,display_channel_code)   values('"   +   code.Text   +   "','"   +   outlet.Text   +   "','"   +   money.Text   +   "','"   +   month.Text   +   "')"  
                  conn.Open()  
                  cmd.Connection   =   conn  
                  cmd.CommandText   =   sql  
   
                  cmd.ExecuteNonQuery()  
                  conn.Close()  
   
          End   Sub  
   
  一定可以的
---------------------------------------------------------------
private   void   DataList1_ItemDataBound(object   sender,   System.Web.UI.WebControls.DataListItemEventArgs   e)  
  {  
  ((LinkButton)e.Item.FindControl("btnDelete")).Attributes.Add("onclick","return   confirm('确认删除吗?');");  
   
   
  }








aspx页面:
 <asp:DataList ID="dltMonthPlan" DataKeyField='PID' runat="server" OnDeleteCommand="dltMonthPlan_DeleteCommand" OnItemCreated="dltMonthPlan_ItemCreated">
                                                        <ItemTemplate>
                                                            <img src="../../images/arrow.bmp">
                                                            <a onclick='window.open("ReadPlan.aspx?PID=<%# DataBinder.Eval(Container, "DataItem.PID") %>","","width=520px,height=400px,top=150px,left=200px,toolbar=no,scrollbars=no,resizable=no,center=yes,statusbars=no")'
                                                                href="#">
                                                                <asp:Label ID="Label22" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Plan") %>'>
                                                                </asp:Label></a>&nbsp;&nbsp;<asp:ImageButton ID="btnDel" ToolTip="删除" CommandName="Delete" runat="server" ImageUrl="../../images/del.gif" />
                                                        </ItemTemplate>
                                                    </asp:DataList>

cs代码:  

     protected void dltMonthPlan_DeleteCommand(object source, DataListCommandEventArgs e)
        {
            int pid = Int32.Parse(dltMonthPlan.DataKeys[e.Item.ItemIndex].ToString());
            schedule del = new schedule();
            int i = del.DelPlan(pid);
            if (i == 1)
                BindWeekPlan(DateTime.Parse(Session["CDate"].ToString()).Year.ToString() + "-" + Convert.ToString(DateTime.Parse(Session["CDate"].ToString()).DayOfYear / 7 + 1));
            else
                schedule.MessageBox(this, "删除失败");
        }
        public void dltMonthPlan_ItemCreated(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.EditItem)
            {
                ImageButton myDeleteButton = new ImageButton();
                myDeleteButton = (ImageButton)e.Item.FindControl("btnDel");
                myDeleteButton.Attributes.Add("onclick", "return confirm('您真的要删除该记录吗?');");
            }
        }