Javascript Confirmar ventana emergente Sí, no botón en lugar de Aceptar y Cancelar
-
05-07-2019 - |
Pregunta
Javascript Confirmar ventana emergente, quiero mostrar Sí, No en lugar de Aceptar y Cancelar.
He utilizado este código vbscript:
<script language="javascript">
function window.confirm(str) {
execScript('n = msgbox("' + str + '","4132")', "vbscript");
return (n == 6);
}
</script>
esto solo funciona en IE, In FF y Chrome, no funciona.
¿Hay algún lugar de trabajo para lograr esto en Javascript?
También quiero cambiar el título de la ventana emergente como en IE. "Windows Internet Explorer 'se muestra, quiero mostrar aquí mi propio nombre de aplicación.
Solución
Lamentablemente, no hay compatibilidad con varios navegadores para abrir un cuadro de diálogo de confirmación que no sea el par predeterminado Aceptar / Cancelar. La solución que proporcionó utiliza VBScript, que solo está disponible en IE.
Sugeriría usar una biblioteca de Javascript que pueda construir un diálogo basado en DOM en su lugar. Pruebe la interfaz de usuario de Jquery: http://jqueryui.com/
Otros consejos
La única forma en que puede lograr esto de manera cruzada con el navegador es usar un marco como jQuery UI y crear un diálogo personalizado:
No funciona exactamente de la misma manera que la ventana emergente de confirmación incorporada, pero deberías poder hacer que haga lo que quieras.
También puede usar http://projectshadowlight.org/jquery-easy-confirm-dialog/ . Es muy simple y fácil de usar. Solo incluye jquery common library y solo un archivo más:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/themes/blitzer/jquery-ui.css" type="text/css" />
<script src="jquery.easy-confirm-dialog.js"></script>
No puede realizar este navegador cruzado con la función confirm () o similar. Le sugiero que utilice algo como la función jQuery UI para crear un cuadro de diálogo HTML en su lugar.
La biblioteca destacada (pero pequeña y simple) que puede usar es JSDialog: js.plus/products/jsdialog
Aquí hay una muestra para crear un diálogo con los botones Sí y No:
JSDialog.showConfirmDialog(
"Save document before it will be closed?\nIf you press `No` all unsaved changes will be lost.",
function(result) {
// check result here
},
"warning",
"yes|no|cancel"
);
Eche un vistazo a http://bootboxjs.com/
Muy fácil de usar:
bootbox.confirm("Are you sure?", function(result) {
Example.show("Confirm result: "+result);
});
1) Puede descargar y cargar los siguientes archivos en su sitio
<link href="/Style%20Library/css/smoothness/jquery.alerts.css" type="text/css" rel="stylesheet"/>
2) después de eso, puedes usar directamente el siguiente código
$ .alerts.okButton = " sí " ;; $ .alerts.cancelButton = " no " ;;
en la función document.ready.
Por favor, intente que funcione.
Gracias
la respuesta muy específica al punto es confirmar el diálogo Función Js:
confirm('Do you really want to do so');
Muestra el cuadro de diálogo con los botones Aceptar cancelar, reemplazar estos botones con Sí no no es una tarea tan simple, para eso necesitas escribir la función jQuery.