Pregunta

En primer lugar, debería mencionar que paso todo el día en la búsqueda y no puedo averiguar qué hay de malo en mi código y por qué no funciona ...

Necesito un diálogo modal para la confirmación en mi código, por lo que utilizo este diálogo modal de jQuery: jquery confirm

Lo que necesito es incrustar esta funcionalidad con un <asp:Button> ...

Mi problema es que cuando haga clic en el botón, la ventana emergente de diálogo, pero los botones Sí / No funcionan y ambos simplemente desaparecen el cuadro de diálogo.

También utilizo el código a continuación, pero __doPostBack() no hizo nada más que en absoluto, pero ejecuta los códigos de JS simples como la alerta ('') perfectamente:

$("#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"
});

I Búsqueda y diálogo Causa El elemento viene fuera del elemento de formulario para que lo devuelva a la forma, pero no sé cómo lo intento por debajo del código y no lo hace

$("#editEventModal").parent().appendTo(jQuery("form:first"));

Otro Probelm es intento de realizar el evento de JavaScript sin el cuadro de diálogo, utilizo 2 Botón uno para llamar a JavaScript y otro para llamarlo, pero cuando uso __dopostback Actualice la página, pero no llega al evento de mi botón. En el código, detrás, intento varias maneras de llamar al evento de Botón OnClick, pero simplemente refresca la página y no llama a mi Alobon OnClick Mehtod !!!

La Declaración de Botones es así:

<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" />

¿Qué debo hacer por estos dos problemas?

¡Busco muchas y no de las soluciones funcionadas para mí !!!

Apreciaré cualquier solución, gracias.

¿Fue útil?

Solución

Sin saber la Declaración de su ASP: botón, aquí está mi mejor conjetura.

Debe usar el archivo único del botón, el atributo "Nombre" del botón, no es id.

__doPostBack('<%=complexConfirm.UniqueID%>', '');

Además, dado que es un botón, en realidad no necesita especificar ONCLICK

Editar: creé un ejemplo de trabajo que demuestra lo que creo que estás tratando de lograr. Puede adaptar esto a su jQuery confirmar según sea necesario.

ASPX:

<asp:Button ID="btnTest1" runat="server" Text="Test1" OnClick="btnTest1_Click" />

javascript:

<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>

Código detrás:

protected void btnTest1_Click(object sender, EventArgs e)
{
    Response.Write("You clicked YES");
}

Creo que parte del problema fue que el nombre de evento no fue nombrado con el nombre de su botón. Si usa AUTOVENTWIREUP, que creo que es, entonces su evento no se disparó porque no puede encontrar un evento con un nombre de coincidencia.

Por lo tanto, lo primero que hice fue eliminar el estadicclientido. Aún puede usar jQuery con ID generado ASP.NET. Luego me aseguré de que el evento se llamara btnTest1_Click porque el nombre del botón es btnTest1

No estoy seguro de por qué necesitó el otro botón, porque parece que todo lo que está intentando hacer es confirmar antes de que se envíe el botón.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top