Sweetalert: Impedir alerta de fechamento automático

Criado em 10 mai. 2015  ·  7Comentários  ·  Fonte: t4t5/sweetalert

Tentando fazer coisas simples. Não quero fechar o pop-up até que o usuário clique no botão confirmar (desativei essa opção, mas o pop-up ainda está fechando). Aqui está o meu código:

sweetAlert({
    title: "Hello",
    text: "<button type='button' class='btn btn-fb fb-share'>Share on Facebook</button>",
    type: null,
    confirmButtonText: "Close",
    html: true,
    closeOnConfirm: false, //It does close the popup when I click on close button
    closeOnCancel: false,
    allowOutsideClick: false
});

$(document).on( "click",".fb-share",  function(e){
    //here sweet alert closes when I press this button. 
    openFbPopup(); 
});

Como evito o fechamento do alerta doce?

Comentários muito úteis

Eu sei que está tarde, mas pode ajudar alguém no futuro

@ moazam1 A opção foi alterada para

swal({
  closeOnClickOutside: false,
});

https://sweetalert.js.org/docs/#closeonclickoutside

Todos 7 comentários

Eu também pareço estar tendo problemas com isso. Mesmo quando eu defino allowOutsideClick como false, ainda é dispensável.

@ moazam1 Para seu caso específico, você precisa fazer um retorno de chamada como um parâmetro adicional após o objeto de opções:

sweetAlert({
    title: "Hello",
    text: "<button type='button' class='btn btn-fb fb-share'>Share on Facebook</button>",
    type: null,
    confirmButtonText: "Close",
    html: true,
    closeOnConfirm: false, //It does close the popup when I click on close button
    closeOnCancel: false,
    allowOutsideClick: false
}, function () {});

$(document).on( "click",".fb-share",  function(e){
    //here sweet alert closes when I press this button. 
    openFbPopup(); 
});

Não precisa fazer nada, mas usando uma função como:

function (isConfirm) {
   // ... Rest of code
}

Permite que você responda manualmente e faça outra coisa.

Faz sentido, como se você não tivesse um manipulador, como você vai fechar o alerta de outra forma.

Se você estiver usando uma tag âncora, apenas remova o href = "", pois ele redireciona você para a mesma página. é por isso que o alerta se fechou

Eu sei que está tarde, mas pode ajudar alguém no futuro

@ moazam1 A opção foi alterada para

swal({
  closeOnClickOutside: false,
});

https://sweetalert.js.org/docs/#closeonclickoutside

Isso não funcionou.

@ moazam1 obrigado, funcionou para mim

@ moazam1
$ (document) .on ("click", ". fb-share", function (e) {
aqui você deve adicionar e.preventDefault ();
openFbPopup ();

funcionou para mim.
});

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

yrshaikh picture yrshaikh  ·  4Comentários

Lusitaniae picture Lusitaniae  ·  4Comentários

rafatux picture rafatux  ·  5Comentários

girishbr picture girishbr  ·  5Comentários

adiwithadidas picture adiwithadidas  ·  4Comentários