0

我有 Internet Explorer 8。我有一个 asp:GridView,我在其中显示记录和图像按钮以执行删除操作。我正在删除记录并在 gridview 的 RowComand 事件上调用我 BindMethod。问题是删除记录后 Internet Explorer 不刷新。我已经检查了 Firefox 和 chrome。他们工作正常。

这是我的代码:ASPX:

    <asp:GridView ID="grd" runat="server" CssClass="grd" EmptyDataText="No record found."
EnableViewState="true" AutoGenerateColumns="False" AllowPaging="False" 
OnRowCommand="grdView_RowCommand" OnRowDataBound="grdView_RowDataBound" 
OnPageIndexChanging="grdView_PageIndexChanging">
     <Columns>
      bla
      bla
      bla
      bla
      bla
     </Columns>
    </asp:GridView>

代码背后

private void BindGrid()
{
     string sSQL = "select * from tableName";
     DataTable dt = DAL.getDataTable(sSQL);
     grd.DataSource = dt;
     grd.DataBind();
}

protected void grdView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
      int id= Convert.ToInt32(e.CommandArgument);
      //Deleting record
      bool result = DAL.DeleteRecord(id);
      if(result)
      {
          BindGrid();
      }
}

请告诉我为什么 Internet Explorer 没有刷新网格,而其他浏览器工作正常。

4

1 回答 1

0

试试这个,当您尝试删除一行时,grdView_RowCommand不会触发。使用 grdView_RowDeleting如下所示。grdView_RowCommand只会在您GridView绑定时触发

protected void grdView_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
  int id= Convert.ToInt32(e.CommandArgument);
  //Deleting record
  bool result = DAL.DeleteRecord(id);
  if(result)
  {
      BindGrid();
  }
}
于 2012-11-09T02:32:00.807 回答