أحاول القيام بأشياء بسيطة. لا أرغب في إغلاق النافذة المنبثقة حتى ينقر المستخدم على زر التأكيد (لقد أوقفت هذا الخيار ولكن لا تزال النافذة المنبثقة تغلق). هذا هو الكود الخاص بي:
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();
});
كيف أمنع إغلاق التنبيه الجميل؟
يبدو أنني أواجه مشاكل مع هذا. حتى عندما أقوم بتعيين allowOutsideClick إلى false ، فلا يزال من الممكن رفضها.
@ moazam1 لحالتك الخاصة ، تحتاج إلى إجراء رد
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();
});
لا تحتاج إلى فعل أي شيء ، ولكن باستخدام وظيفة مثل:
function (isConfirm) {
// ... Rest of code
}
يتيح لك الرد يدويًا والقيام بشيء آخر.
من المنطقي ، كما لو لم يكن لديك معالج ، كيف ستغلق التنبيه بخلاف ذلك.
إذا كنت تستخدم علامة ارتساء ، فما عليك سوى إزالة href = "" ، لأنها تعيد توجيهك إلى نفس الصفحة. لهذا أغلق التنبيه نفسه
أعلم أن هذا متأخر ، لكن قد يساعد شخصًا ما في المستقبل
@ moazam1 تم تغيير الخيار إلى
swal({
closeOnClickOutside: false,
});
هذا لم ينجح.
@ moazam1 شكرا لقد عملت بالنسبة لي
@ moazam1
$ (document) .on ("click"، ". fb-share"، الوظيفة (هـ) {
هنا يجب عليك إضافة e.preventDefault () ؛
openFbPopup () ،
عملت معي.
}) ؛
التعليق الأكثر فائدة
أعلم أن هذا متأخر ، لكن قد يساعد شخصًا ما في المستقبل
@ moazam1 تم تغيير الخيار إلى
https://sweetalert.js.org/docs/#closeonclickoutside