我有一個表單用於註冊用戶,並由AJAX請求處理。
當AJAX請求完成後,SweetAlert會向用戶顯示發生的更新,但是當我關閉它並單擊表單字段時,鍵盤上的Tab鍵不再執行任何操作。ajax請求後表單輸入選項卡破壞
settimeout被添加,所以我可以第一個swal顯示什麼,所以我可以「模擬」一個緩慢的互聯網連接。
<div class="box box-info">
<div class="box-body">
<form id="db-test">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-user"></i></span>
<input type="text" id="user" class="form-control" placeholder="Username" autocomplete="off">
</div>
<br>
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-key"></i></span>
<input type="password" id="pass" class="form-control" placeholder="Password" autocomplete="off">
</div>
<br>
<button class="pull-right btn btn-info" id="register"><b>register</b></button>
</form>
</div>
</div>
<script type="text/javascript">
(function() {
$('#register').submit(function (e) {
e.preventDefault();
var credentials = {
username: $('#user').val(),
password: $('#pass').val()
}
swal({
title: 'Working on your registration',
text: 'Give me a bit...<br/><br/><i class="fa fa-spinner fa-pulse fa-3x fa-fw"></i>',
html: true,
showConfirmButton: false
});
setTimeout(function() {
$.ajax({
url: '../register',
method: 'POST',
headers: {'X-api': 'application/json'},
data: credentials
})
.done(function (data, textStatus, jqXHR) {
swal({
title: 'Result',
text: '<pre>' + JSON.stringify(data, null, 4) + '</pre>',
html: true
})
});
}, 1000);
})
})();
</script>
第一:setTimeout的並不重要,閱讀問題二:doc文件,並在所有的例子jQuery.ajax()頁面顯示.done,而不是.success。第三:closeOnConfirm不是解決方案,對不起。 – CreasolDev