我想让 Sweet alert 工作首先将检查更改为 true、false,该怎么办? [复制]

Posted

技术标签:

【中文标题】我想让 Sweet alert 工作首先将检查更改为 true、false,该怎么办? [复制]【英文标题】:I want Sweet alert to work first to change the check to true, false, what to do? [duplicate] 【发布时间】:2021-03-29 18:07:03 【问题描述】:

我想让 Sweet alert 先工作,把检查改成 true,false,怎么办?请帮帮我!

$("#our-table").on('click', '#button-delete', function () 
    var check = null;

    Swal.fire(
        title: 'Are you sure ?',
        icon: 'warning',
        showCancelButton: true,
        confirmButtonColor: '#3085d6',
        cancelButtonColor: '#d33',
        confirmButtonText: 'Comfirm'
    ).then((result) => 
        if (result.isConfirmed) 
            check == true
         
    )

    if (check == true) 
        return true;
    
    else 
        return false;
    
);

【问题讨论】:

你的目标是什么?当点击sweetalert的确认时,您将检查真或假然后显示一些东西(或返回一些东西)? 【参考方案1】:

首先如果你想根据sweetalert的确认返回true或false,你可以通过回调函数,这样返回检查的值:

function sweetChecked(callback) 
    Swal.fire(
        title: 'Are you sure ?',
        icon: 'warning',
        showCancelButton: true,
        confirmButtonColor: '#3085d6',
        cancelButtonColor: '#d33',
        confirmButtonText: 'Comfirm'
    ).then((result) => 
        callback(result.isConfirmed);
    )


$("#button-delete").on('click', function (event) 
    event.preventDefault();
    var URLToRedirect = event.currentTarget.getAttribute('href');
    console.log(URLToRedirect);
    sweetChecked(function (checked) 
        if (checked) 
            console.log("true");
            window.location.href = URLToRedirect;
        
        else 
            console.log("false");
        
    );
);
<script src="https://code.jquery.com/jquery-3.5.1.min.js"
    integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10.12.5/dist/sweetalert2.all.min.js"></script>

<a id="button-delete" href="/ManageUser/Delete/01">Delete</a>

【讨论】:

对不起,但是我按下的按钮我使用 标签,它把我带到链接,而无需等待甜蜜的警报工作。 你能解释一下你的目标吗? 如果你想先获取选中的值然后去一个URL,也可以这样做。 我有一个删除按钮,它发送一个获取值来删除数据,我希望它首先发出警报,我使用标签 但是没有通知,一按就会发送值。 干得好!。非常感谢兄弟。你是我的偶像【参考方案2】:

认为你唯一需要改变的是

 if (result.isConfirmed) 
     check = true
    

== 实际上是在做检查而不是赋值。

【讨论】:

以上是关于我想让 Sweet alert 工作首先将检查更改为 true、false,该怎么办? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Android美丽的对话框项目sweet-alert-dialog

漂亮的各种弹出框 sweet alert

Laravel 中带有 Sweet Alert 的删除方法

Sweet Alert 2 - 为啥我不能按班级定位?

用 WooCommerce 上的 JS Sweet Alert 替换“已添加到购物车”通知

如何使用 extjs 4.2 更改 radiogroup 检查值的样式?