1

ユーザーが未保存の変更を含むページを離れようとしている場合に警告ボックスを表示する要件に取り組んでいます。これはコードです:

$(function() {
    $(':input',document.myForm).change(function() { 
        window.onbeforeunload = function() {
            return "Are you sure you want to leave this page? You have unsaved changes!";
        }
    });

    $('form').submit(function() {
        window.onbeforeunload = function() { };
    });
});

すべて正常に機能しますが、テキストとポップアップボックスはブラウザによって上書きされます。IEとFirefoxを試しましたが、どちらも私のテキストを上書きし、組み込みの警告ポップアップを使用しているようです。これを回避して、テキストと構成可能なjQueryダイアログを含むポップアップを表示する方法はありますか?

4

1 に答える 1

1

AFAIKには、onbeforeunloadルックアンドフィールのUI実装をオーバーライドする方法はありません。(Web開発者として)できる最善のことは、文字列を返すことです。この文字列がユーザーに表示される方法は完全に制御不能であり、ブラウザーに依存します。たとえば、.NETデスクトップアプリケーションを作成していて、WebBrowserコントロール(IEのラッパー)を使用している場合、このメソッドを実装して処理するのはあなた次第です。

したがって、カスタムブラウザ拡張機能を作成していない限り、基本的にjQueryUIダイアログを忘れることができます。

于 2012-04-30T21:45:35.160 に答える