如何在 JavaScript 中使用带有 sweetalert 的确认功能

how to use confirm function with sweetalert in JavaScript

我在 HTML.

中得到一个调用函数 cancel() 的标签
<a onclick="return cancel();" href="<%= request.getContextPath()%>/views/pay/user/plan.jsp"></a>

这就是函数 cancel() 在 JavaScript 中的样子。

function cancel() { 
    return confirm("My Message");
};

如果我点击确定按钮,页面应该返回到指定页面。
或者如果我点击取消按钮,页面应该停留在同一页面。

除了设计之外,上面的代码工作正常,符合我的预期。

我想将 Sweetalert(无论其版本是一还是二)应用于我的确认 window。
但是,据我搜索,我只能找到确认 'yes' 按钮永远不会使页面移动到指定页面的内容。


我想知道 Sweetalert 字面意思是普通警报吗?

如@Niet 所述,只有 confirm() 有权停止执行。 为了使用 SweetAlert,您应该通过调用 preventDefault() 停止重定向,显示警报,等待用户交互,如果他们想继续,请自行进行重定向 (location.href = ... )。

function confirm(e) {
  e.preventDefault();
  swal({
      title: "Are you sure?",
      buttons: true,
      dangerMode: true,
    })
    .then((toContinue) => {
      if (toContinue) {
        location.href = e.target.href;
      }
    });
}
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
<a onclick="return confirm(event)" href="https://whosebug.com">Navigate</a>

https://jsbin.com/sugavat/edit?html,js,output