繁体   English   中英

UpdatePanel不刷新

[英]UpdatePanel doesn't Refresh

我有一个带有HtmlInputHidden字段的简单页面。 我使用Javascript更新该值,并且在回发页面时,我想读取该HtmlInputHidden字段的值。 该HtmlInputHidden字段的Value属性在回发时为默认值(创建页面时所具有的值,而不是通过Javascript反映的值)。 我还尝试向ScriptManager.RegisterHiddenField(Page,“ MyHtmlImputHiddenField”,“ initialvalue”)注册HtmlInputHidden字段,但是即使我(通过javascript)可以检查该值是否已更改,也仍然只能读取“ initialvalue”。

我尝试对行ID进行硬编码,令我惊讶的是,回发后的gridview在删除之前完全相同,但是记录已从数据库中删除。 (我称之为databind方法)。

  protected void gridViewDelete(object sender, GridViewDeleteEventArgs e)
  {

      bool bDelete = false;
      bool bCheck = false;

      if (hfControl.Value != "1")
      {
          // check relationship
          bCheck = validation_method(.......);
          if (bCheck)
          {
              bDelete = true;
          }   
      }
      else
      {
          hfControl.Value = "";
          bDelete = true;
      }

      if (bDelete)
      {
          //process delete
      }
      else
      {
          string script = string.Empty;

          script += " var x; ";
          script += " x = confirm('are u sure?'); ";
          script += " if (x){ " ;
          script += " document.getElementById('hfControl').value  = '1'; ";
          script += " setTimeOut(__doPostBack('gridView','Delete$"
                                      + e.RowIndex + "'),0);";
          script += " } ";

          ScriptManager.RegisterClientScriptBlock(this,
                                       Page.GetType()
                                       , "confirm"
                                       , script
                                       ,true);
      }
   } 

在回发中,页面加载时是隐藏字段的视图,它是回发的还是页面加载时设置的值? 可能您不得不担心在回发中您没有将值重置为原始值的情况。 另一点是,如果您执行删除操作,您是否正在刷新显示的数据还是相同的数据? 这些将是我的建议。

当我执行回发时,该值与回发时相同。 我认为updatepanel没有刷新。 我试图做__doPostBack('UpdatePanel1',''),也没有起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM