甜蜜警报重定向到相同的 jsp 与更改部分
sweet alert redirect to same jsp with changing section
这是我的 home.jsp,我的甜蜜提醒重定向到同一页面的其他部分。重定向成功但甜蜜警报未关闭。如果我将 closeOnConfirm 设置为真正的重定向不起作用。
$(document).ready(function(){
$(".btn").on("click",function(){
var dataString=$("#myForm").serialize();
$.ajax({
type: "POST",
url: "some.jsp",
dataType: 'json',
data: dataString,
success: function (data) {
console.log(data);//"success"
if (data.stat === "success") {
swal({
title: "Submitted!",
closeOnConfirm: false
}, function () {
window.location.href="home.jsp#about";
});
} else if (data.stat === "failed") {
swal({
title: "Submission Failed!",
closeOnConfirm: true
});
}
},
error: function (data) {
console.log(data);
}
});
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<div id="myForm">
<form>
<input type="text" name="text">
<input type="button" value="Send" class="btn">
</form>
</div>
<div id="about">
<!-- Some Data -->
</div>
尝试按照以下方式更改您的 sweetalert 配置,它工作正常
sweetAlert({
title: "Hello",
text: "<button type='button' class='btn btn-fb fb-share'>Share on Facebook</button>",
type: null,
confirmButtonText: "Close",
html: true,
closeOnConfirm: true, //It does close the popup when I click on close button
closeOnCancel: true,
allowOutsideClick: true
}, function() {});
$(document).on("click", ".fb-share", function(e) {
//do something else
openFbPopup();
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
swal.close() 在回调函数中解决了我的问题。
$(document).ready(function() {
$(".btn").on("click", function() {
var dataString = $("#myForm").serialize();
$.ajax({
type: "POST",
url: "some.jsp",
dataType: 'json',
data: dataString,
success: function(data) {
console.log(data); //"success"
if (data.stat === "success") {
swal({
title: "Submitted!",
confirmButtonText: "Visit About",
closeOnConfirm: false
}, function() {
window.location.href = "home.jsp#about";
swal.close();
});
} else if (data.stat === "failed") {
swal({
title: "Submission Failed!",
closeOnConfirm: true
});
}
},
error: function(data) {
console.log(data);
}
});
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<div id="myForm">
<form>
<input type="text" name="text">
<input type="button" value="Send" class="btn">
</form>
</div>
<div id="about">
<!-- Some Data -->
</div>
这是我的 home.jsp,我的甜蜜提醒重定向到同一页面的其他部分。重定向成功但甜蜜警报未关闭。如果我将 closeOnConfirm 设置为真正的重定向不起作用。
$(document).ready(function(){
$(".btn").on("click",function(){
var dataString=$("#myForm").serialize();
$.ajax({
type: "POST",
url: "some.jsp",
dataType: 'json',
data: dataString,
success: function (data) {
console.log(data);//"success"
if (data.stat === "success") {
swal({
title: "Submitted!",
closeOnConfirm: false
}, function () {
window.location.href="home.jsp#about";
});
} else if (data.stat === "failed") {
swal({
title: "Submission Failed!",
closeOnConfirm: true
});
}
},
error: function (data) {
console.log(data);
}
});
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<div id="myForm">
<form>
<input type="text" name="text">
<input type="button" value="Send" class="btn">
</form>
</div>
<div id="about">
<!-- Some Data -->
</div>
尝试按照以下方式更改您的 sweetalert 配置,它工作正常
sweetAlert({
title: "Hello",
text: "<button type='button' class='btn btn-fb fb-share'>Share on Facebook</button>",
type: null,
confirmButtonText: "Close",
html: true,
closeOnConfirm: true, //It does close the popup when I click on close button
closeOnCancel: true,
allowOutsideClick: true
}, function() {});
$(document).on("click", ".fb-share", function(e) {
//do something else
openFbPopup();
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
swal.close() 在回调函数中解决了我的问题。
$(document).ready(function() {
$(".btn").on("click", function() {
var dataString = $("#myForm").serialize();
$.ajax({
type: "POST",
url: "some.jsp",
dataType: 'json',
data: dataString,
success: function(data) {
console.log(data); //"success"
if (data.stat === "success") {
swal({
title: "Submitted!",
confirmButtonText: "Visit About",
closeOnConfirm: false
}, function() {
window.location.href = "home.jsp#about";
swal.close();
});
} else if (data.stat === "failed") {
swal({
title: "Submission Failed!",
closeOnConfirm: true
});
}
},
error: function(data) {
console.log(data);
}
});
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<div id="myForm">
<form>
<input type="text" name="text">
<input type="button" value="Send" class="btn">
</form>
</div>
<div id="about">
<!-- Some Data -->
</div>