△△つづいて漏れにStrutsの良さを教えてくだっさい
■ このスレッドは過去ログ倉庫に格納されています
0025デフォルトの名無しさん
NGNG質問の内容がやや漠然としているので、いくつかの場合に分けてみる。
1.すべての遷移先でフレームを解除する場合。
→>>24氏の通り、<html:form action='…' target='_top'>と指定する。
2.JSPページにサブミットボタンが複数あり、それによって処理が異なる場合。
(DispatchActionを使って処理を変えるなどする場合)
→それぞれのボタンに
<html:submit onclick='this.form.target="_top";'>
<html:submit onclick='this.form.target="_self";'>
などとすればいいと思う。
3.Action#execute()の実行の結果、複数のforwardへ分岐するが、
あるforwardではフレームを解除し(エラー画面など)、
別のforwardでは解除しない(通常の処理の継続など)。
→これは私には難しい。とりあえず思いつくのは、
目的のページに遷移する前に、まずフレームを解除するためだけの専用ページに
遷移する。そのページの中身はほとんど空で、ただ
<html:form action='(本来遷移したいJSPへのグローバルフォワード)' target='_top'/>
<script type='text/javascript'>this.form.submit()</script>
などと書いてあり、自動的に目的のページに遷移するようにする。
誰か 3.のもっときれいなやり方を教えてくだちい。
■ このスレッドは過去ログ倉庫に格納されています