Anduvimos buscando por el mundo on line para darte la solución a tu dilema, en caso de alguna difcultad déjanos tu duda y te responderemos con mucho gusto.
Solución:
Actualización (enero de 2017): Este problema se solucionó en v7: guía de actualización de v7 ↗
Debe agregar un controlador de rechazo a la Promesa. Como alternativa, puede utilizar .catch(swal.noop)
como una forma rápida de simplemente suprimir los errores:
swal('...')
.catch(swal.noop);
PD. el paquete que estás usando se llama SweetAlert2, no SweetAlert. En futuras preguntas, menciónelo para que pueda obtener respuestas más relevantes.
SweetAlert2 rechaza la promesa de resultado cuando se presiona el botón cancelar. Puedes manejar eso:
swal(
…
).then(function(json_data)
…
, function(dismiss)
if (dismiss === 'cancel') // you might also handle 'close' or 'timer' if you used those
// ignore
else
throw dismiss;
)
Si no necesita hacer nada con el json_data
también puede utilizar el catch
método.
new Promise(function(resolve, reject) {
no es necesario. $.post()
devuelve un objeto de promesa jQuery.
Posibles sustitutos de la solución Promise.reject()
por new Promise()
constructor; remoto .then()
que se colocó como opción a primera swal()
llamar; patrón parece esperar un Promise
para ser devuelto de preConfirm
aunque no estoy seguro de qué valor se espera que se devuelva de .done()
otro que json_data
.
swal(
title: "Confirm",
input: 'checkbox',
inputValue: 0,
type: "warning",
inputPlaceholder: 'I agree to ',
showCancelButton: true,
confirmButtonText: 'Confirm',
showLoaderOnConfirm: true,
preConfirm: function(result)
if (result)
return $.post("my.php",
Data: data
)
.done(
function(json_data)
var data_array = $.parseJSON(json_data);
var moreDetails = '';
var resulting = 'error';
var details = "Transaction Declined"
if (data_array["trxApproved"] == true)
resulting = 'success';
details = "Confirmed"
moreDetails = "
Approved" + data_array["approved"] + "" +
"
Details Code: " + data_array["detailsCode"] + "";
swal(
type: resulting,
title: details,
html: "Details:
" + data_array["messagetext"] + moreDetails
);
);
else
return Promise.reject('You must agree to our Terms & Conditions ');
,
allowOutsideClick: false
);
Aquí tienes las reseñas y valoraciones
Finalizando este artículo puedes encontrar las acotaciones de otros usuarios, tú todavía eres capaz mostrar el tuyo si dominas el tema.