0

Buenas tengo esta función que es un mensaje de confirmación al darle clic en un enlace y estoy tratando de redireccionar a otra pagina cuando le dan cancelar pero no me funciona alguien me puede ayudar.

Función JavaScript

function ConfirmarCopiaEncuesta() {
    var respuesta = confirm('Esta seguro que desea copiar la encuesta?');
    if (respuesta == true) {
        return true;
    } else {
        return false;
        window.location.href = "miclubapp.com/plataform/";

    }

}

Enlace html

<a class="green Copiar_Encuesta" href="encuestasinfinita.php?action=copiarEncuesta&id=643&IDModulo=135" onclick="return ConfirmarCopiaEncuesta()">

y lo que pasa es que es una grilla de datos y mas abajo hay una funcion y siempre entra en esa funcion y la redirige a otro lado

onSelectRow: function(id) {
                location.href = "<?php echo $script ?>.php?action=edit&id=" + id + "&IDModulo=" + "<?php echo $_GET["IDModulo"] ?>";
                return false;
            },

introducir la descripción de la imagen aquí

1
  • Después del return sales de la función. La linea de redireccion nunca se ejecuta.
    – Jaime
    Commented el 29 mar. 2022 a las 1:25

2 respuestas 2

0

lo mas sencillo es seria asi:

    function ConfirmarCopiaEncuesta() {
        var respuesta = confirm('Esta seguro que desea copiar la encuesta?');
        if(respuesta){
          return true;
        }else{
        window.location.replace("/");
        return false;
        }

    }

es sencillo lo primero es tener en cuenta que el if no es necesario especificar el valor respuesta == true ya que eso lo podemos comparar solo con el if, seguido a eso es mejor usar el window.location.replace("url").

saludos!

0

Tu problema es queestás haciendo el return antes de redireccionar. Cuando devuelves algo con return, esto detiene tu función, por lo que no está llegando al redirect. Primero tendrías que hacer el redirect, y luego devolver lo que necesites:

function ConfirmarCopiaEncuesta() {
    var respuesta = confirm('Esta seguro que desea copiar la encuesta?');
    if (respuesta == true) {
        return true;
    } else {
        window.location.href = "miclubapp.com/plataform/";
        return false;
    }
}

¿No es la respuesta que buscas? Examina otras preguntas con la etiqueta o formula tu propia pregunta.