注册 登录
编程论坛 ASP.NET技术论坛

关于dataList中弹出确认窗口的问题

魔城侠客 发布于 2007-12-01 10:24, 1163 次点击
protected void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
    {
        TableCell tc = e.Item.Cells[5];
        Response.Write(e.Item.ItemIndex.ToString());
        LinkButton bt = (LinkButton)tc.Controls[0];              //这句有错误
        bt.Attributes["onclick"] = "return confirm('确定要删除吗?')";
    }
在datagrid中删除列在第6列,想点击后弹出一个确认按钮,但是会提示错误,错误如下
[italic]指定的参数已超出有效值的范围。
参数名: index[/italic]
查看e.item.iteIndex后,发现e.item.iteIndex的值为-1-1,如果datagrid中的有数据,那会显示-101-1这样的值
如何修改才能实现上述功能
注:datagrid中无法取到控件名
   该列也非模板列

[[italic] 本帖最后由 魔城侠客 于 2007-12-1 18:46 编辑 [/italic]]
3 回复
#2
bygg2007-12-01 13:33
Controls["控件名"];           试试这样
#3
魔城侠客2007-12-01 18:45
已经搞定了
e.Item.Cells[5].Attributes.Add("onclick", "return confirm('确定要删除吗?')");
这样即可
再问下,在datalist中为什么不行呢,
Button btn = (Button)e.Item.FindControl("btnRefuse");
btn.Attributes.Add("onclick","return comfirm('确定要拒绝吗?');");
这样为什么不行,没效果,但没有错误
#4
魔城侠客2007-12-03 10:23
顶起,有哪位能帮解决下吗,就是datalist的问题,上面写了
1