bootstrap模态在4秒后关闭或用户单击

时间:2013-09-10 23:21:37

标签: jquery ajax twitter-bootstrap modal-dialog

如何为引导模式设置超时?获取ajax数据后,php返回的消息包含术语success,我想给用户提供关闭窗口的选项。但是,我也只想减少4秒钟。目前第二个成功消息回来,模态隐藏了自己。

$('#forgotform').submit(function (e) {
    "use strict";
    e.preventDefault();
    $('#forgotsubmit').button('loading');
    var post = $('#forgotform').serialize();
    var action = $('#forgotform').attr('action');
    $("#message").slideUp(350, function () {
        $('#message').hide();
        $.post(action, post, function (data) {
            $('#message').html(data);
            document.getElementById('message').innerHTML = data;
            $('#message').slideDown('slow');
            $('#usernamemail').focus();
            if (data.match('success') !== null) {
                $('#forgotform').slideUp('slow');
                $('#forgotsubmit').button('complete');
                $('#forgotsubmit').click(function (eb) {
                    eb.preventDefault();
                    $('#forgot-form').modal('hide');
                });
                setTimeout($('#forgot-form').modal('hide'), 10000);
            } else {
                $('#forgotsubmit').button('reset');
            }
        });
    });
});

4 个答案:

答案 0 :(得分:37)

调用setTimeout()时,将命令包装在匿名函数中。否则命令将立即执行。

setTimeout(function() {$('#forgot-form').modal('hide');}, 4000);

答案 1 :(得分:17)

setTimeout(function(){
  $('#Modal').modal('hide')
}, 4000);

//其中modal的id是' Modal'

答案 2 :(得分:0)

$('#submit1').click(function(){
        setTimeout("$('#myModal').modal('hide');",3000);
    });

这适用于弹出窗口延迟3秒钟。 请点击$('#submit1')查看我已编写代码的点击。

答案 3 :(得分:-1)

以下代码用于在onClick事件中隐藏模型。使用onClick侦听器的类名和要隐藏的模式标识符作为选择器。

$('.class_name').on('click',function(){
    $('#modal_id').modal('hide');
});