问题描述
我有这个用于实现sweetalert2测试。 但是,它引发Uncaught TypeError:无法将类作为函数调用 有想法吗?
tp_compare
进一步更新
当我尝试使用教程页面给出的版本7.2.0时,它可以工作。
default_3way_compare
<html lang="en">
<head>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10.5.0/dist/sweetalert2.all.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sweetalert2@10/dist/sweetalert2.min.css" id="theme-styles">
</head>
<body>
<div class="col-md-12">
<button class="btn btn-danger btn-flat btn-sm remove-user" data-id="{{ $category->id }}" data-action="{{ route('category.destroy',$category->id) }}" > Delete jq</button>
</div>
<script type="text/javascript">
$(document).ready(function(){
$('.remove-user').click(function(){
id = $(this).attr('data-id');
/*
Swal.fire({
title: 'Error!',text: 'Do you want to continue',icon: 'error',confirmButtonText: 'Cool'
});
*/
swal({
title: "Delete?",text: "Please ensure and then confirm!",type: "warning",showCancelButton: !0,confirmButtonText: "Yes,delete it!",cancelButtonText: "No,cancel!",reverseButtons: !0
}).then(function (e) {
if (e.value === true) {
var CSRF_TOKEN = $('Meta[name="csrf-token"]').attr('content');
$.ajax({
type: 'POST',url: "{{url('/category')}}/" + id,data: {_token: CSRF_TOKEN},dataType: 'JSON',success: function (results) {
if (results.success === true) {
swal("Done!",results.message,"success");
} else {
swal("Error!","error");
}
}
});
} else {
e.dismiss;
}
},function (dismiss) {
return false;
});
});
});
</script>
</body>
现在我想sweetalert2的最新版本10.5.0不再支持这种书写方式...
解决方法
尝试
<html lang="en">
<head>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10.5.0/dist/sweetalert2.all.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sweetalert2@10/dist/sweetalert2.min.css" id="theme-styles">
</head>
<body>
<div class="col-md-12">
<button class="btn btn-danger btn-flat btn-sm remove-user" data-id="22" > Delete jq</button>
</div>
</body>
<script type="text/javascript">
$(document).ready(function(){
$('.remove-user').click(function(){
let id = $(this).attr('data-id');
Swal.fire({
title: "Are you sure?",text: "You will not be able to recover this imaginary file!",type: "warning",showCancelButton: true,confirmButtonColor: "#DD6B55",confirmButtonText: "Yes,delete it!",cancelButtonText: "No,cancel plx!",closeOnConfirm: false,closeOnCancel: false
},function(isConfirm) {
if (isConfirm) {
swal("Deleted!","Your imaginary file has been deleted.","success");
} else {
swal("Cancelled","Your imaginary file is safe :)","error");
}
}
);
});
});
</script>
</html>
听到的是工作代码链接。.https://jsfiddle.net/ar24cpq6/
,对于sweetalert2,这样使用
Swal.fire({
title: 'Error!',text: 'Do you want to continue',icon: 'error',confirmButtonText: 'Cool'
}).then((result) => {
if (result.isConfirmed)
swal.fire("Done!","It was succesfully deleted!","success");
else
swal.fire("Error!","Coudn't delet!","error");
});