1

我有一个 asp 页面,其中有 2 个网格,其中每行有一个备注文本框和一个删除按钮。当备注文本框为空时,我运行如下服务器端验证:

  {
    if (RemarkTextBox.Text == string.Empty)
            {
                BRMessengers.BRInformation(this, "Remarks Cannot Be left Empty.");
                return;
            }
            else
            { 
              if (Session["update"].ToString() == ViewState["update"].ToString())
                {
                    deleteReport(id);
                }
           }}

我的问题是当我运行一个页面时它执行得很好。当我删除该行而不发表评论时,它应该给出一条消息,但在这里我也没有收到一条消息。不仅如此,程序控制流还没有到达Page_PreRender. 在另一个网格中,我具有与上述相同的结构,它运行良好。我也有这个Page_PreRender功能,示例如下:

    {  
     protected void Page_PreRender(object obj, EventArgs e)
     {
        ViewState["update"] = Session["update"];
     }
  }
4

1 回答 1

1

在 finally 块中绑定网格。Grid 的绑定会产生问题。因此,您应该按如下方式绑定网格:

  {
   try
   {
    if (RemarkTextBox.Text == string.Empty)
    {
        BRMessengers.BRInformation(this, "Remarks Cannot Be left Empty.");
        return;
    }
    else
    { 
      if (Session["update"].ToString() == ViewState["update"].ToString())
        {
            deleteReport(id);
        }
   }
}
catch(Exception)
{
 BrMessanger.BrMessage(this,"server error. Please try again");
}
finally
{
  YourGridName.DataSource=loadDetails();
  YourGridName.DataBind();
}

}
于 2014-02-04T05:50:50.257 回答