怎么才能实现点击datagrid中的一项,弹出一个新对话框??
能给出具体实现代码更好,谢谢,很急!谢谢!!!!!!!!!

解决方案 »

  1.   

    private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
    {
    Response.Write("<script>window.open('aaa.aspx')</script>"); }
      

  2.   

    Public Sub DataGrid_ItemCreated(ByVal sender As Object, ByVal e As DataGridItemEventArgs) Handles DataGrid1.ItemCreated
      Select Case e.Item.ItemTyp
        Case ListItemType.Item, ListItemType.AlternatingItem, ListItemType.EditItem
            Dim myDeleteButton As LinkButton
            myDeleteButton = e.Item.Cells(3).Controls(0) '指定你的特定列(列的类型为LinkButton)
            myDeleteButton.Attributes.Add("onclick", "return confirm('确定要删除" & DataGrid1.DataKeys(CInt(e.Item.ItemIndex)) & " 吗?');")
       End Select
        End Sub
      

  3.   

    将特定列做成模板列,如下<asp:TemplateColumn HeaderText="企业名称">
    <HeaderStyle Width="30%"></HeaderStyle>
    <ItemStyle HorizontalAlign="Center"></ItemStyle>
    <ItemTemplate>
    <asp:LinkButton id="searchqy" runat="server" CausesValidation="False">
    <%# DataBinder.Eval(Container.DataItem,"qyname")%>
    </asp:LinkButton>
    </ItemTemplate>
    </asp:TemplateColumn>在datagrid事件中写ItemCommandprivate void DataGridPeoInfo_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    Response.Write("<script>window.open('QYSearchInfo.aspx?update="+e.Item.Cells[0].Text+"', 'newwindow', 'top=50,left=0');</script>");
    }
      

  4.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    e.Item.Cells[指定列号].Attributes.Add("onClick", "return confirm('你确定要删除该记录吗?');");
    }
      

  5.   

    用TemplateColumn定义那列,在ItemTemplate里你就可以自由发挥了啊,你应该要看一下关于DataGrid的TemplateColumn例一:采用Linkbutton,在服务器端去控制弹出窗口和相应操作
    <asp:TemplateColumn HeaderText="删除">
    <HeaderStyle HorizontalAlign="Center" Width="8%" CssClass="DataGridTitle" VerticalAlign="Middle"></HeaderStyle>
    <ItemStyle HorizontalAlign="Center" CssClass="DataGridTD" VerticalAlign="Middle"></ItemStyle>
    <ItemTemplate>
    <asp:LinkButton runat="server" Text='删除' CommandArgument='<%# DataBinder.Eval(Container, "DataItem.BH", "{0}") %>' OnCommand="M_Del" visible='<%# M_Enable(DataBinder.Eval(Container, "DataItem.Flag", "{0}"),"Delete") %>' CommandName='<%# "AAAA.aspx?BH="+DataBinder.Eval(Container, "DataItem.BH", "{0}")%>' ID="Linkbutton1">
    </asp:LinkButton>
    </ItemTemplate>
    </asp:TemplateColumn>例二:采用客户端用链接直接打开窗口
    <asp:TemplateColumn HeaderText="文件标题">
    <HeaderStyle HorizontalAlign="Center" Width="35%" CssClass="DataGridTitle" VerticalAlign="Middle"></HeaderStyle>
    <ItemStyle CssClass="DataGridTD"></ItemStyle>
    <ItemTemplate>
    <a href='<%# "Show.aspx?BH="+DataBinder.Eval(Container, "DataItem.BH", "{0}")+"&From=ccc.aspx"%>'>
    <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Title", "{0}") %>'>
    </asp:Label></a>
    </ItemTemplate>
    </asp:TemplateColumn>