Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

145
Vistas
ASP.NET JavaScript siempre muestra un mensaje de alerta predeterminado

A pesar de JavaScript ubicado en ASP.NET Core Page (cshtml), siempre aparece un mensaje predeterminado como "Se realizan cambios..." desde el navegador EDGE (o CHROME es lo mismo). ¿Hay alguna manera de usar el mensaje personalizado?

 window.onbeforeunload = function confirmExitPage() {
 event.preventDefault();
 return "My Custom Message I like to Show?";
}

Ya he visto preguntas similares en SO, pero ninguna de ellas ofrece una solución...

EDITAR

Los navegadores evitan absolutamente el mensaje personalizado del usuario , razonablemente. Luego, decida cuándo debe enviarse este mensaje obligatorio al usuario:

 <body>
 <button onclick="activateReloader()">activate</button>
 <button onclick="deactivateReloader()">deactivate</button>
 <script>
 function onBeforeUnload(e) {
 e.preventDefault();
 alert("my custom message");//this not works, for demo only
 e.returnValue = '';
 }

 function activateReloader() {
 window.addEventListener('beforeunload', onBeforeUnload);
 }

 function deactivateReloader() {
 window.removeEventListener('beforeunload', onBeforeUnload);
 }
 </script>
</body>

Este código indica cuándo se mostrará el mensaje al usuario y cuándo no.

almost 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Esto estaba prohibido en los navegadores hace mucho tiempo (Chrome 51 es de 2016). Ya no puedes mostrar un mensaje personalizado.

A partir de Firefox 44, Chrome 51, Opera 38 y Safari 9.1, se mostrará una cadena genérica que no está bajo el control de la página web en lugar de la cadena devuelta.

https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event#compatibility_notes

Al leer el problema en el rastreador de problemas de Chromium, se trataba de evitar que los sitios malos lo usaran para intentar estafar a los usuarios.

Los cuadros de diálogo onbeforeunload se utilizan para dos cosas en la Web moderna:

  1. Evitar que los usuarios pierdan datos sin darse cuenta.
  2. Estafando a los usuarios.

En un intento de restringir su uso para este último sin detener el primero, no mostraremos la cadena proporcionada por la página web.

https://bugs.chromium.org/p/chromium/issues/detail?id=587940

almost 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda