- PR -

[struts]javascriptのwindow.open()でformの値を取得する方法

投稿者投稿内容
java初心者
ベテラン
会議室デビュー日: 2007/07/23
投稿数: 54
投稿日時: 2007-08-21 16:05
お世話になっております。
strutsとjavascriptについてのご質問です。

遷移後の別画面でウインドウサイズの変更をする為に
window.open("***.do","name","width=***,height=***")を使用し
actionを走らせた場合formの値を取得できないのですが、
取得する方法はありますでしょうか?

尚、仕様上一つのactionで画面1と画面2を切り分けています。

宜しくお願い致します。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2007-08-21 16:24
スコープをセッションにしてください。
java初心者
ベテラン
会議室デビュー日: 2007/07/23
投稿数: 54
投稿日時: 2007-08-21 16:42
かつのり様

ありがとうございます。

説明不足で申し訳ございません。

Httpsessionはコーディング規約上、
使用することができないです・・・。

他に方法がございましたら、
アドバイスをお願い致します。


[ メッセージ編集済み 編集者: java初心者 編集日時 2007-08-21 16:50 ]
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2007-08-21 16:50
ウィンドウを開いた後に、該当ウィンドウをターゲットとしてsubmit()してください。
javascriptはJavaではないのでJava Solution会議室ではなく、
リッチクライアント & 帳票会議室
で質問していただけると助かります。
java初心者
ベテラン
会議室デビュー日: 2007/07/23
投稿数: 54
投稿日時: 2007-08-21 17:01
nagise様

ありがとうございます。

すみません、ちょっと混乱してしまっているのですが、
>ウィンドウを開いた後に、該当ウィンドウをターゲットとしてsubmit()してください
というのは、遷移後の別画面側での処理をするということは分かったのですが、
該当ウィンドウをターゲットとしてsubmit()というのは、
<html:submit>でデータの受け渡し、別画面でウインドウサイズの変更をする
ということでしょうか?

-------------------------------------------------------------

>javascriptはJavaではないのでJava Solution会議室ではなく、
>リッチクライアント & 帳票会議室
>で質問していただけると助かります。

-------------------------------------------------------------
すみません、strutsが絡んでいたのでこちらかなと思っておりました。
次回からは、リッチクライアント & 帳票会議室を利用させて頂きます。

[ メッセージ編集済み 編集者: java初心者 編集日時 2007-08-21 17:02 ]
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2007-08-21 18:07
引用:

java初心者さんの書き込み (2007-08-21 17:01) より:
すみません、ちょっと混乱してしまっているのですが、
>ウィンドウを開いた後に、該当ウィンドウをターゲットとしてsubmit()してください
というのは、遷移後の別画面側での処理をするということは分かったのですが、
該当ウィンドウをターゲットとしてsubmit()というのは、
<html:submit>でデータの受け渡し、別画面でウインドウサイズの変更をする
ということでしょうか?



Struts抜きでHTMLでサンプルを書いて見てください。

javascriptでWindowOpenしますよね?
ウィンドウはブランクで開いて構いません。
ウィンドウを開いたら、そのままjavascriptで対象formをsubmit()します。
その際にformのtargetを開いたWindowにしておきます。

上記のHTMLのサンプルを書いてから、同じようなHTMLを書き出すように
JSPに書き下ろしましょう。
段階を踏んで動作確認することが結果的に早いし確実です。
急がば回れという奴ですね。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2007-08-21 19:26
もう一つ方法論として、window.openのURLのパラメータを利用するって方式もあります。
マルチバイトが含まれていたりすると面倒なので、
基本的にnagiseさんのパターンを採用することが多いですね。

趣味の問題かもしれませんが、実は自分の場合は極力セッションを使わないです・・・
オブジェクトのライフサイクルを極力短くしたいので。
でも問題が簡単に解決できるなら、セッションを人に勧めますね。
小僧
ぬし
会議室デビュー日: 2002/08/14
投稿数: 526
投稿日時: 2007-08-21 19:34
>Httpsessionはコーディング規約上、
>使用することができないです・・・。

コーディング規約にしては厳しいですねーずいぶんと。

スキルアップ/キャリアアップ(JOB@IT)