日期:2014-05-19  浏览次数:20404 次

datagrid 模版列中一图片删除按钮 C#代码怎么写
<asp:TemplateColumn       HeaderText= "删除 ">      
    <ItemTemplate>      
    <asp:ImageButton       id= "ImageButton2 "       runat= "server "       CommandName= "delete "       BorderStyle= "None "       ImageUrl= "../../images/delete.gif "> </asp:ImageButton>      
    </ItemTemplate>      
    </asp:TemplateColumn>

///////////////
我的思路是在ItemDataBound里将ImageButton2抓出来做脚本判断:
ImageButton   button   =   (ImageButton)   e.Item.FindControl( "ImageButton2 ");
然后
button.Attributes.Add( "onclick ", "return   delset() ");
响应的脚本为一简单的对话框   最重要的是我想再脚本里面做删除事件  

function   delect()
{
var   Button1   =   document.getElementById( "Button1 ");
if(confirm( '啊啊啊啊啊啊啊啊啊啊啊? '))
{
Button1.click();
}
else
{
return   false;
}
}
然后我再Button1里的onclick事件里面写删除的sql
private   void   Button1_Click(object   sender,   System.EventArgs   e)
{
            string   updateState1   =   " ";
updateState1   +=   "Delete   From   conference_master   Where   con_code   =   "   +ID(这个id我永远取到最后一条     我想取相应的那条记录);
DataBase.Update(   updateState1   );
BindGrid();
}

问题就在Button1的onclick这里面
我怎么能抓到原来该删除行的得id   然后进行删除操作呢!!!
大家帮帮忙!!!


------解决方案--------------------
直接 button.Attributes.Add( "onclick ", "return confirm( '啊啊啊啊啊啊啊啊啊啊啊? ') ");
然后在ItemCommand中写代码就可以了。

------解决方案--------------------
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//删除确认 cell[]中括号由位置决定
LinkButton lbtnDelete = (LinkButton) e.Item.Cells[1].Controls[0];
lbtnDelete.Attributes.Add( "onclick ", "return confirm( '确定删除 " + e.Item.Cells[2].Text + "? '); ");
}
}
------解决方案--------------------
ImageButton button = (ImageButton) e.Item.FindControl( "ImageButton2 ");

//将ID传到js的方法里
button.Attributes.Add( "onclick ", "return delset( ' "+e.Item.Cells[1].Text+ " ') ");
响应的脚本为一简单的对话框 最重要的是我想再脚本里面做删除事件

function delect()
{
var Button1 = document.getElementById( "Button1 ");
if(confirm( '啊啊啊啊啊啊啊啊啊啊啊? '))
{
Button1.click();
}
}

有一点不太明白,你为什么不直接用ItemCommand事件而非得要调用button1.Click?
------解决方案--------------------
if(e.Item.ItemType==ListItemType.Item)
{
ImageButton button = (ImageButton) e.Item.FindControl( "ImageButton2 ");
button.Attributes.Add( "onclick ", "return delset() ");

}
------解决方案--------------------
不好意思有点错,在页面上加个hidden,
<input type=hidden id= "hid_ID " runat=server name= "hid_ID ">