0

我有一个 jQuery 模态 UI 基本上阻止用户下载文件。我preventDefault用来阻止下载管理器出现。但这会杀死GET.

用户点击后Agree,如何请求继续下载?

我用谷歌搜索了这个,他们中的大多数都在提交表单。

4

1 回答 1

2

记住文件的 URL,然后将其设置为window.location用户单击时Agree

HTML:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/smoothness/jquery-ui.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
    </head>
    <body>
        <a href="http://google.com" id="btn">Button</a>
        <div id="dlg">Continue?</div>
    </body>
</html>​

JavaScript:

var dlg$ = $('#dlg').dialog({
    title: 'Confirm action',
    autoOpen: false,
    buttons: {
        'Agree': function() {
            dlg$.dialog('close');
            window.location = dlg$.data('url');
        }
    }
}),
btn$ = $('#btn').on('click', function(e) {
    e.preventDefault();
    dlg$.data('url', this.href).dialog('open');
});​
于 2012-09-25T23:46:36.123 回答