我在按钮中删除一行数据时使用下面的提示:
(Response.Write("<script language='javascript'>confirm('真的要删除吗?')</script>"))
请问一下如何得到其中js中comfirm()的返回值?

解决方案 »

  1.   

    Button1.Attributes.Add("onclick","return confirm('真的要删除吗?');");
      

  2.   

    不好意思,刚才没说清楚,我是在一个dataGrid中加了一个按钮列,将面的代码写在了dataGrid的itemCommand事件中的.
      

  3.   

    用eqh(我想早恋,可已经晚了...) 说的方法。
    为按钮添加一个单击事件,响应的脚本就是 弹出来的confirm当你点击“是”时,就会执行服务器端Button_Click() 事件中的代码
    点击“否”时就不会执行。
      

  4.   

    re:不好意思,刚才没说清楚,我是在一个dataGrid中加了一个按钮列,将面的代码写在了dataGrid的itemCommand事件中的.应该放在ItemDataBound中。((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');");
      

  5.   

    放在ItemDataBound事件中吗?而不是ItemCommand事件中吗?这两者有什么区别呢?
      

  6.   

    ItemDataBound是生成DataGrid的项到客户端
    ItemCommand是从客户端提交事件到服务器
      

  7.   

    那在ItemDataBound中将项绑定到客户端后,能否得到我们所要绑定的项,也就是说在我们要绑定的项时去执行((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');");
    而不是每绑定一项就执行一次。且要在页面首次打开时不执行的。
      

  8.   

    namespace ebcnc.usermanager
    {
    /// <summary>
    /// u_countlist 的摘要说明。
    /// </summary>
    public class u_countlist : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.DataGrid MyDataGrid;

    private void Page_Load(object sender, System.EventArgs e)
    {
    } private void MyDataGrid_ItemDataBound(object sender,DataGridItemEventArgs e)
    {
    ((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');"); } #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()

    this.MyDataGrid.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.MyDataGrid_ItemDataBound);
    this.Load += new System.EventHandler(this.Page_Load); }
    #endregion
    }
    }
      

  9.   

    private void MyDataGrid_ItemDataBound(object sender,DataGridItemEventArgs e)
    {
    ((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');");
    }这个函数是对所有项起作用的,在DataBind时自动运行
      

  10.   

    ((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');"); }
    当中的“yourbuttonname”指的是什么呢?加的按钮列是什么呢?
      

  11.   

    yourbuttonname 就是你添加到DATAGRID中的删除按钮的名字
      

  12.   

    你按钮的名字,你按钮加在DataGrid()的第几列上.
      

  13.   

    在dataGrid中填加按钮时有要添加的按钮的名字吗?是哪个属性呢?好像没有这一属性吧。
      

  14.   

    <asp:datagrid id="dgrDepartmentAdmin" Height="371px" Width="788px" AutoGenerateColumns="False" GridLines="None" Runat="server" AllowPaging="True">
    <AlternatingItemStyle BackColor="Beige"></AlternatingItemStyle>
    <HeaderStyle Width="100%" BackColor="#C0FFFF"></HeaderStyle>
    <Columns> <asp:BoundColumn DataField="ID" HeaderText="编号">
    <HeaderStyle Width="5%"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="strSimpleDescribe" HeaderText="Bug标题">
    <HeaderStyle Width="48%"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="ProjectName" HeaderText="项目名称">
    <HeaderStyle Width="12%"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="ModuleName" HeaderText="模块名称">
    <HeaderStyle Width="13%"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="UnitName" HeaderText="单元名称">
    <HeaderStyle Width="12%"></HeaderStyle>
    </asp:BoundColumn>
    <asp:HyperLinkColumn Text="编辑" DataNavigateUrlField="ID" DataNavigateUrlFormatString="BugEdit.aspx?id={0}"
    HeaderText="操作">
    <HeaderStyle Width="5%"></HeaderStyle>
    </asp:HyperLinkColumn>
    <asp:HyperLinkColumn Text="删除" DataNavigateUrlField="ID" DataNavigateUrlFormatString="BugIndex.aspx?id={0}"
    HeaderText="操作">
    <HeaderStyle Width="5%"></HeaderStyle>
    </asp:HyperLinkColumn>
    <asp:ButtonColumn Text="普通按钮" DataTextField="ID" HeaderText="按钮列" CommandName="Delete"></asp:ButtonColumn>
    </Columns>
    <PagerStyle Position="Top" PageButtonCount="5" Mode="NumericPages"></PagerStyle>
    </asp:datagrid>
    这是我的dataGrid,该如何写“yourbuttonname”呢?
      

  15.   

    ....你用的是自带的按钮列啊。
    那就看你这个按钮列在第几列了了,比如第7列就
    ((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');");
    改为
    ((Button)(e.Item.Cells[6].Controls[0])).Attributes.Add("onclick","return confirm('真的要删除吗?');");  //其中的6为该列的index
      

  16.   

    不对的,提示索引越界?再问一下,cell[6]不是第七行的吗?
      

  17.   

    <asp:ButtonColumn ButtonType=LinkButton
    用((LinkButton)(e.Item.Cells[6].Controls[0])).Attributes.Add("onclick","return confirm('真的要删除吗?');");  <asp:ButtonColumn ButtonType=PushButton
    用((Button)(e.Item.Cells[6].Controls[0])).Attributes.Add("onclick","return confirm('真的要删除吗?');"); 不说了
      

  18.   

    应该放在ItemDataBound中。((Button)(e.Item.FindControl("yourbuttonname"))).Attributes.Add("onclick","return confirm('真的要删除吗?');");
      

  19.   

    这是你的ItemDataBound 事件,看看你的程序,将这个事件改为下面这样就可以了private void dgrDepartmentAdmin_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
     ((LinkButton)(e.Item.Cells[6].Controls[0])).Attributes.Add("onclick","return confirm('真的要删除吗?');");
    }
      

  20.   

    System.ArgumentOutOfRangeException: 指定的参数已超出有效值的范围。参数名: index at System.Web.UI.ControlCollection.get_Item(Int32 index) at BugTrace1._0.Bug.BugIndex.dgrDepartmentAdmin_ItemDataBound(Object sender, DataGridItemEventArgs e) in e:\project\bugmanage\bugtrace1.0\bug\bugindex.aspx.cs:line 283 at System.Web.UI.WebControls.DataGrid.OnItemDataBound(DataGridItemEventArgs e) at System.Web.UI.WebControls.DataGrid.CreateItem(Int32 itemIndex, Int32 dataSourceIndex, ListItemType itemType, Boolean dataBind, Object dataItem, DataGridColumn[] columns, TableRowCollection rows, PagedDataSource pagedDataSource) at System.Web.UI.WebControls.DataGrid.CreateControlHierarchy(Boolean useDataSource) at System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) at System.Web.UI.WebControls.BaseDataList.DataBind() at BugTrace1._0.Bug.BugIndex.BindGrid() in e:\project\bugmanage\bugtrace1.0\bug\bugindex.aspx.cs:line 77
      

  21.   

    private void dgrDepartmentAdmin_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
      if(e.Item.ItemIndex>-1)
      {
     ((LinkButton)(e.Item.Cells[6].Controls[0])).Attributes.Add("onclick","return confirm('真的要删除吗?');");
      }
    }