C# 单击my gridview中的编辑按钮时,JQuery UI对话框消失

C# 单击my gridview中的编辑按钮时,JQuery UI对话框消失,c#,asp.net,gridview,jquery-ui-dialog,C#,Asp.net,Gridview,Jquery Ui Dialog,我有这个asp页面,我正在工作,它有一个gridview控件,其中有编辑按钮。我可以使用编辑按钮来显示jQueryUI对话框。问题是,当我点击按钮时,对话框会很快打开然后关闭。以下是gridview的标记: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="No

我有这个asp页面,我正在工作,它有一个gridview控件,其中有编辑按钮。我可以使用编辑按钮来显示jQueryUI对话框。问题是,当我点击按钮时,对话框会很快打开然后关闭。以下是gridview的标记:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
       BackColor="White" BorderColor="#CCCCCC" 
       BorderStyle="None" BorderWidth="1px" CellPadding="4" ForeColor="Black" 
       OnRowDataBound="GridView1_RowDataBound" 
       style="margin-bottom: 0px" >
       <Columns>
               <asp:TemplateField HeaderText="Edit">
                     <ItemTemplate>
                           <asp:LinkButton Id="btnEditRow" Text="Edit" OnClientClick="EditRecordOpen('editForm');" OnClick="btnEditRow_Click" runat="server" />
                      </ItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="StartTime" HeaderText="Start Time" 
                      SortExpression="StartTime" >
                      <ItemStyle Width="180px" />
                 </asp:BoundField>
       </Columns>
 </asp:GridView>
将停止该行为,但它仍在消失

还有3个功能可以控制与对话框关联的按钮点击:

private void CloseDialog(string dialogId)
{
      string script = string.Format(@"closeDialog('{0}')", dialogId);
      ScriptManager.RegisterClientScriptBlock(this, typeof(Page), UniqueID, script, true);
}

protected void btnSaveRecord_Click(object sender, EventArgs e)
{
      CloseDialog("editForm");
}

protected void btnEditRow_Click(object sender, EventArgs e)
{
      var editLink = ((LinkButton)sender);
      editRecordPanel.Update();
}
我也试着使用Chrome开发者工具来查看点击过程中发生了什么,但是我没有看到任何与对话框相关的错误

此外,我还使用了页面中的示例来设置对话框

此外,我的弹出窗口定义如下:

<div id="editForm">
     <asp:UpdatePanel ID="editRecordPanel" UpdateMode="Conditional" ChildrenAsTriggers="true" runat="server">
          <ContentTemplate>
               <asp:Label ID="popupTest" runat="server" Text="Test"></asp:Label>
               <asp:Button ID="btnSaveRecord" runat="server" Text="Save" OnClick="btnSaveRecord_Click" />
          </ContentTemplate>
      </asp:UpdatePanel>
</div>

让它工作起来,@Aristos帮我找到了我需要的地方

return false;
内部

OnClientClick="EditRecordOpen('editForm'); return false;"

UpdatePanel中的所有内容都是吗从我在第二次查看中看到的情况来看,在对话框出现后,通过调用代码进行回发。对话框不能阻止/停止发帖,就像唯一一个提出问题的浏览器对话框一样。这是正常的,你打开对话框,然后因为回发而关闭,页面被重新加载。这就是为什么对话框只显示一秒钟?我怎样才能阻止它?此外,我将弹出窗口的所有标记都放在问题中。我原来忘了添加它。将它放在客户端上单击=“EditRecordOpen('editForm”);返回false;“然后打开对话框,但我不知道下一步要做什么。谢谢,这很有效。接下来,我需要获取行数据,以便用户可以编辑它。但我可能应该提出另一个问题。
return false;
OnClientClick="EditRecordOpen('editForm'); return false;"