2

当我单击具有类“alert3”的按钮时出现的提示弹出窗口不会关闭。

<a href="#" class="btn btn-primary btn-lg alert3">CLICKMEMEMEMEMEME</a>

这是我正在调用的函数:

<script>

    $(document).on("click", ".alert3", function(e) {
        bootbox.prompt("What is your name?", function(result) {                
            if (result === null) {                                             
                Example.show("Prompt dismissed");                              
            } else {
            Example.show("Hi <b>"+result+"</b>");                          
            }
        });
    });
</script>
4

2 回答 2

6

弹出窗口不会关闭,因为您在回调函数中有错误,所以它在 bootbox 可以使弹出窗口消失之前崩溃。

最好的猜测是Example您的代码中没有定义。也许你是在 Bootbox 网站上看到的,他们使用的是一个名为Example. 如果要使用回调函数显示结果,可以将其添加到 html 中:

<a href="#" class="btn btn-primary btn-lg alert3">CLICKMEMEMEMEMEME</a><br/>
<p id='result'></p>

然后更改您的javascript:

<script>
$(document).on("click", ".alert3", function(e) {
    bootbox.prompt("What is your name?", function(result) {
        if (result === null) {
            $('#result').html("Prompt dismissed");
        } else {
            $('#result').html("Hi <b>"+result+"</b>");
        }
    });
});
</script>
于 2013-11-05T15:21:08.480 回答
1

bootbox.js 中的提示弹出窗口

这不起作用,因为示例函数没有在那里定义。我们需要首先使用当前选择器值和与它们关联的文本来定义它们。这里 $("#result") 用于在特定的 div 中显示错误消息。

html代码:

  <p>Click here-><a class="alert" href=#>Alert!</a></p><p id='result'</p>

代码:

var Example = (
function() 
{
"use strict";

var elem,
    hideHandler,
    that = {};

that.init = function(options) {
    elem = $(options.selector);
};
that.show = function(text) {
    clearTimeout(hideHandler);

    $("#result").html(text);
    $("#result").fadeIn();

    hideHandler = setTimeout(function() {
        that.hide();
    }, 4000);
};

that.hide = function() {
    $("#result").fadeOut();
};

return that;
}());
于 2017-02-09T07:56:00.080 回答