Jquery DoPostback刷新页面,但不';无法捕获事件处理程序

Jquery DoPostback刷新页面,但不';无法捕获事件处理程序,jquery,asp.net,modal-dialog,dopostback,Jquery,Asp.net,Modal Dialog,Dopostback,首先,我应该提到,我花了一整天的时间在搜索上,无法找出我的代码出了什么问题以及为什么它不起作用 我的代码中需要一个模态对话框进行确认,因此我使用jQuery模态对话框: 我需要的是将此功能嵌入 我的问题是,当我点击按钮时,对话框弹出,但“是/否”按钮不起作用,两者都消失在对话框中 我也使用了下面的代码,但是\uuu doPostBack()什么都没有做,但是它可以完美地运行简单的js代码,比如alert(“”): $("#complexConfirm").confirm({ title

首先,我应该提到,我花了一整天的时间在搜索上,无法找出我的代码出了什么问题以及为什么它不起作用

我的代码中需要一个模态对话框进行确认,因此我使用jQuery模态对话框:

我需要的是将此功能嵌入

我的问题是,当我点击按钮时,对话框弹出,但“是/否”按钮不起作用,两者都消失在对话框中

我也使用了下面的代码,但是
\uuu doPostBack()
什么都没有做,但是它可以完美地运行简单的js代码,比如alert(“”):

$("#complexConfirm").confirm({
     title: "Redirect confirmation",
     text: "This is very dangerous, you shouldn't do it! Are you really really sure?",
     confirm: function (button) {
         __doPostBack('complexConfirm', 'OnClick');
     },
     cancel: function (button) {
         return false;
     },
     confirmButton: "Yes",
     cancelButton: "No"
});
我搜索和对话是因为元素在表单元素之外,所以我应该把它带回到表单中,但我不知道我如何尝试下面的代码,它也不知道

$("#editEventModal").parent().appendTo(jQuery("form:first"));
另一个问题是,我尝试在没有对话框的情况下使用javascript事件进行回发,我使用两个按钮一个用于调用javascript,另一个用于调用该按钮,但当我使用_udopostback时,它会刷新页面,但不会在代码中出现我的按钮事件,我尝试了几种调用button onClick事件的方法,但它只是刷新页面,而没有调用我的butoon onClick方法

按钮声明如下所示:

<asp:Button ID="complexConfirm" ClientIDMode="Static" runat="server" OnClick="TestBTN_Click" Text="Test" />
<asp:Button ID="checkit" ClientIDMode="Static" runat="server" OnClientClick="__doPostBack('<%=complexConfirm.UniqueID%>', '');" Text="CHECK" />

对于这两个问题,我应该怎么做

我搜索了很多对我有用的解决方案


我将感谢您的任何解决方案,谢谢。

在不知道asp:按钮声明的情况下,这里是我的最佳猜测

您需要使用按钮的唯一ID,即按钮的“name”属性,而不是它的ID

__doPostBack('<%=complexConfirm.UniqueID%>', '');
我认为部分问题在于你的事件名称没有用你按钮的名称命名。如果使用autoEventWireup(我认为您是),那么您的事件将不会触发,因为它找不到具有匹配名称的事件

所以,我做的第一件事就是删除StaticClientID。您仍然可以将jquery与asp.net生成的ID一起使用。然后我确保事件名为
btnTest1\u单击
,因为按钮名为
btnTest1


我不确定您为什么需要另一个按钮,因为似乎您要做的只是在按钮提交之前确认。

避免使用
\uuuu doPostBack
并使用我以前尝试过的这个技巧,同样,只需刷新页面而不运行按钮事件处理程序:(您是否对asp:按钮使用静态客户端ID模式?您需要使用按钮的uniqueID(html名称属性)才能使
\uuuDoPostBack
功能正常工作。类似于
\uDoPostBack(“”,“”,);
我添加了按钮声明,请检查并告诉我它有什么问题…谢谢你的回答,我尝试了你的代码,但和以前一样,我编辑了我的问题并添加了我的按钮声明…你需要从按钮中删除它我想:
OnClick=“TestBTN\u Click”
。如果您手动触发回发,您将不希望出现这种情况。不,这是另一个按钮!!!我有两个按钮,需要逐个触发回发事件!如果我删除OnClick,我如何为按钮设置事件处理程序的代码?请查看我的编辑。我使用jquery.confirm为您解决了这一问题。非常感谢您的回复wer,我只是将您的解决方案复制到一个新的web表单页中,但它也不起作用!!!它有什么问题?是否可能是本地主机的问题?
<asp:Button ID="btnTest1" runat="server" Text="Test1" OnClick="btnTest1_Click" />
<script>
    $('#<%=btnTest1.ClientID%>').confirm({
        text: "This is very dangerous, you shouldn't do it! Are you really really sure?",
        title: "Confirmation required",
        confirm: function (button) {
            // do something
            __doPostBack('<%= btnTest1.UniqueID%>', '');
        },
        cancel: function (button) {
            // do something
        },
        confirmButton: "Yes I am",
        cancelButton: "No",
        post: true
    });
</script>
protected void btnTest1_Click(object sender, EventArgs e)
{
    Response.Write("You clicked YES");
}