none
Botón de confirmación para redireccion asp.net c# RRS feed

  • Pregunta

  • Hola ,tengo el siguiente metodo:
      protected void Grabar_Click(object sender, EventArgs e)
            {
    
    
                bool rpta = ComprobarCamposVacios();
                if (rpta == false)
                {
                    ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", "validarVacio();", true);
                }
                else
                {
    
    
    
    
    
                    DataTable dtbg = new DataTable();
                    dtbg = Session["tabla"] as DataTable;
                    InsertarDiagnostico(dtbg);
    
                    if (dtbg.Rows.Count>0)
                    {
                        ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", "confirmar();", true);
    
                        Session["tabla"] = null;
                        Response.Redirect(Request.RawUrl);
                    }
                    
    
                }
    
    
            }
    el scriptmanager me lanza un alert que dice: Dregistrado,como puedo hacer para que al darle click al ok del alert que ha lanzado recien haga la accion del "Response.Redirect(Request.RawUrl);"
    lunes, 28 de marzo de 2016 15:05

Respuestas

  • hola

    podrias hacer algo como

    if (dtbg.Rows.Count>0)
    {
    	string script = string.Format("confirmar('{0}');", Request.RawUrl);
    	ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", script, true);
    
    	Session["tabla"] = null;
    }

    en el codigo del confirmar en el lado del cliente seria

    <script>
    	function confirmar(url){
    		alert('mensaje');
    		window.location.href = url;
    	}
    </script>

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta RODRIGOMEJIA lunes, 28 de marzo de 2016 23:45
    lunes, 28 de marzo de 2016 15:56

Todas las respuestas

  • A ver si entendi bien, vos queres que despues de esta linea  ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", "confirmar();", true);

    ejecute algo y por ultimo haga el redirect no?

    Osea dependiendo del resultado?


    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 28 de marzo de 2016 15:11
  • el resultado siempre va a ser true, lo que quiero es que al darle click en el ok del alert,recien redireccione.
    lunes, 28 de marzo de 2016 15:16
  • Pobra usar esta linea de codigo.

    function deletePost() {
        var ask = window.confirm("Are you sure you want to delete this post?");
        if (ask) {
            window.alert("This post was successfully deleted.");
    
            document.location.href = "window-location.html";
    
        }
    }

    reemplazas el javascript por esto. 


    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 28 de marzo de 2016 15:19
  • hola

    podrias hacer algo como

    if (dtbg.Rows.Count>0)
    {
    	string script = string.Format("confirmar('{0}');", Request.RawUrl);
    	ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", script, true);
    
    	Session["tabla"] = null;
    }

    en el codigo del confirmar en el lado del cliente seria

    <script>
    	function confirmar(url){
    		alert('mensaje');
    		window.location.href = url;
    	}
    </script>

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta RODRIGOMEJIA lunes, 28 de marzo de 2016 23:45
    lunes, 28 de marzo de 2016 15:56