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 に答える