« iBatis:ページング機能 | トップページ | javaのシステム情報取得(改行コードの取得について) »

onBeforeUnload 追記

これ結局解決していない問題なのですが。。。

onBeforeUnload で確認ダイアログを表示させる場合。

submit() やら history.back() なんかをファンクションの中から呼んでいる場合に、ダイアログでキャンセルボタンを押下するとエラーが発生します。

どうも、直前に呼んでいたファンクションに戻ろうとしているんだけど、それを見失っているような感じ。ファンクションの宣言部分でエラーがあるとJavaScript様はおっしゃいます。

普通に、×ボタン押下だったり、戻るボタン押下だったりの場合ではエラーは発生しません。

一応調べたんですが結論が出なかったため(爆)、仕方なく二段構えでいくことにしました。

onBeforeUnload は、×ボタン押下などの場合に使用、登録ボタンなどのようにファンクションを呼び出して入力チェックなどをしてからsubmit() 、などの場合は、そのファンクション内でonBeforeUnload 時に表示するダイアログと全く同じダイアログを表示して誤魔化す。

……ネット上にこれに関する記事が見つけられなかったんですが、onBeforeUnload ってあんまりこういう使い方しないもんなんでしょうか……orz

|

« iBatis:ページング機能 | トップページ | javaのシステム情報取得(改行コードの取得について) »

JavaScript」カテゴリの記事

コメント

onBeforeUnload=eventHandlerとして、returnによる確認ダイアログを表示するか判定すればよいのではないでしょうか。
onBeforeUnloadの確認ダイアログは制御できないページ移動に対して使用し、リンクやボタンなどの正常な処理ではconfirmでよいと思います。

投稿: 通りがかり | 2006年8月 2日 (水) 14時17分

そーなんですよ。結局そういう対応をすることになったのですが(わかりにくい文章ですいません・爆)
エラーにならないようには…ならないんですかね…(^^;)

投稿: すい@管理人 | 2006年8月 3日 (木) 22時26分

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: onBeforeUnload 追記:

« iBatis:ページング機能 | トップページ | javaのシステム情報取得(改行コードの取得について) »