この例contact
では、ナビゲーション メニューのタブをクリックすると、ブートストラップ モーダルが開きます。ユーザーがモーダルのテキスト ボックスに 10 未満の文字列を入力すると、警告が表示され、モーダルは閉じません。文字列が 10 より大きい場合、次のようなメッセージがモーダルに追加され、モーダルsuccess...
は呪文のために遅延してから消えるはずです。現在のコードでは、検証部分と表示されるモーダルは機能しますが、消える前に遅延はありません。現在のコードが機能しないのはなぜですか?どうすれば修正できますか?
フィドル js
$(document).ready(function () {
$('#modalClose').click(function () {
var validResult = getLength('#tbName', 10);
if (validResult) {
var successMessage = $('<div>').text('Successfully saved to database...').css('color', 'green');
$('.modal-body').append(successMessage);
$('#contact').delay(5000).modal('hide');
}
else {
alert('input did not meet validation, try again');
$('#tbName').val('').focus();
}
});
function getLength(el, x) {
var len = $(el).val().length
return len > x
}
$('#contact').on('hide.bs.modal', function () {
$('#tbName').val('');
});
$('#contact').on('shown.bs.modal', function () {
$('#tbName').focus();
});
});