1

我很难创建一个按钮,如果我想继续打开 URL 链接,它将弹出一个对话框来“确认”。但是,当我点击“google”按钮时,它会在我点击“ok”查看之前自动将我定向到 google 网站。我不知道我做错了什么。

您可以在此处查看 jsfiddle:http: //jsfiddle.net/uRGJD/76/

HTML:

<button class="open" onclick="window.open('http://google.com')">Google</button>

<div class="unique">Are you sure you want to continue?</div>

JS:

$(function() {
    $('.open').on("click", function(e) {
        var link = this;

        e.preventDefault();

        $('.unique').dialog({
            buttons: {
                "Ok": function() {
                    window.location = link.href;
                },
                "Cancel": function() {
                    $(this).dialog("close");
                }
            }
        });
    });
});

CSS:

.unique {display: none;}

提前谢谢你!

4

3 回答 3

0

<button class="open">Google</button>

从您的<button>.

此外,您只是在创建 jQueryUI 对话框。您实际上需要打开它。我建议查看此小部件的 jQueryUI 文档。

于 2013-05-21T21:25:57.337 回答
0

问题是您正在调用 window.open 内联函数。

把它拿出来放在一个叫做 doGoogle 或其他东西的函数中。然后将doGoogle函数放入ok函数调用中。

只要 div 像您一样存在,.dialog 就会初始化对话框的打开

贾德森

于 2013-05-21T21:29:40.313 回答
0

我使用的另一种方法是将我的 .dialog 包装在类似 showDialog(URL) 的函数中

这样您就可以将 URL 传递给按钮

所以你可以这样称呼它:onclick="showDialog("google.com")

然后你的按钮会有

window.location.href=网址

希望这可以帮助。

于 2013-05-24T12:43:20.327 回答