Un evento de clic de botón de ASP.NET no se está disparando

Tengo un botón dentro de un div que está oculto de forma predeterminada, ya que se utiliza como una ventana emergente modal por jQuery UI.

El controlador de eventos de clic para este botón nunca recibe una llamada, pero si copio el código del botón fuera de este div oculto, entonces funciona correctamente. ¿Cómo puedo solucionar este problema?

Este es el código que tengo hasta ahora:

<asp:CheckBox ID="chkUser" runat="server" Checked='' /> <asp:Label ID="lblUser" runat="server" Text=''/>

El código para mostrar / ocultar esta div es:

  // Increase the default animation speed to exaggerate the effect $.fx.speeds._default = 1000; $(function () { $("#dialog").dialog({ autoOpen: false, show: "blind", hide: "explode" }); $("#opener").click(function () { $("#dialog").dialog("open"); return false; }); });  

El problema aquí es que jQuery-UI crea el diálogo fuera del elemento

, por lo que al hacer clic en él nunca se envía el formulario.

Para evitar esto, en lugar de crear un evento de clic manualmente, puede mover el cuadro de diálogo

nuevamente al formulario. Hice una búsqueda rápida y la respuesta a esta pregunta ya cubre el problema.

Así que solo necesitas hacer este cambio:

  

Un cambio será cambiar el evento del botón a un evento del cliente y luego activar el evento del lado del servidor desde el lado del cliente.

Vea la pregunta sobre el desbordamiento de stack Cómo disparar un evento de clic de botón desde JavaScript en ASP.NET .

Tenga en cuenta que esto tiene ramificaciones al utilizar un iFrame en su diálogo. Mover un div con un iFrame hace que iFrame publique dos veces o más. Si ha implementado esto, verificaría si esto es cierto en su caso. He publicado una solución que encontré aquí: https://stackoverflow.com/a/24663205/3334255