2012-04-24 8 views
1

私はaspxページを持っています。私はJavaScript関数を持っています。AJAXとonbeforeunloadイベント

window.onbeforeunload = confirmExit; 
function confirmExit() 
{ 
return "You have attempted to leave this page. If you have made any changes to the fields  without clicking the Submit button, your changes will be lost. Are you sure you want to exit this page?"; 

} 

これは、ユーザーがページを離れるときに実行されます。ただし、部分ページのポストバックに対しても実行されます。これが部分的なページのポストバックであるかどうかをチェックして無視するにはどうすればよいですか?

答えて

0

Can I prevent window.onbeforeunload from being called when doing an AJAX call

あなたがやっている行動は、次のいずれかを行うかどうかを確認してください:

onbeforeunload event

次のいずれかを実行し、このイベントを起動するには:

  • を閉じます現在のウィンドウ。
  • 新しいアドレスを入力するか、お気に入りを選択して別の場所に移動します。
  • 別のドキュメントを参照するアンカーをクリックします。
  • anchor.clickメソッドを呼び出します。
  • document.writeメソッドを呼び出します。
  • document.closeメソッドを呼び出します。
  • window.closeメソッドを呼び出します。
  • window.navigateメソッドまたはNavigateAndFindメソッドを呼び出します。
  • location.replaceメソッドを呼び出します。
  • location.reloadメソッドを呼び出します。
  • location.hrefプロパティに新しい値を指定します。
  • ACTION属性の で指定されたアドレスに、INPUT type = submit制御を介してフォームを送信するか、 form.submitメソッドを呼び出します。
  • ウィンドウ名に の可能な値_selfを指定して、window.openメソッドを呼び出します。
  • document.openメソッドを呼び出します。
  • [戻る]、[進む]、[更新]、または[ホーム]ボタンをクリックします。
+0

例を挙げておきます。 aspxフォームでは、私はコントロールを持っています。このコントロールからオプションを選択すると、部分的なポストバックがあり、confirmExit()関数が実行されます。これはドロップダウンの選択で、ページからの実際のナビゲーションではないことをどのように伝えますか? – user1247395

関連する問題