2012-04-30 4 views
1

保存していない変更があるページをユーザーが放置しようとしている場合、警告ボックスを表示するための要件に取り組んでいます。これはコード:ブラウザがjQuery 1.4を使用して警告ダイアログのテキストをオーバーライドします

$(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ダイアログでポップアップを表示する方法がありますか?

答えて

1

AFAIK onbeforeunloadのルックアンドフィールUIの実装を上書きする方法はありません。あなたが(ウェブ開発者として)できることは、文字列を返すことです。この文字列がユーザに提示される方法は、あなたのコントロールの範囲外であり、ブラウザに依存します。たとえば、.NETデスクトップアプリケーションを作成していて、WebBrowserコントロール(IEのラッパー)を使用している場合は、このメソッドを実装して処理するのはup to youです。

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

+0

そのルートに行きたくありません。さて、機能がそこにあるので、私はちょうどこれと一緒に行くと思う。 –

関連する問題