WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:POSTの値を新規サブウィンドウに渡す方法

0:[投稿] nana [2006/04/22 16:02 ] [環境:WIN IE XP WIN IIS]

お世話になります。JavaScriptについて教えてください!!!

メニュー1のフォームでセレクトボックスやチェックボックスをチェックして、submitボタンを押します。
すると、新規にサブウィンドウ(アドレスなどが表示されていないサブウィンドウ)を立ち上げたいのですが、うまくいきません。
現在はsubmitボタンにonclickでJavaScriptの関数を呼び出して、そこでaction先を指定しています(下記のような感じです)

// フォーム部分
<form name="form_name" method="post">
 // セレクトボックスやチェックボックスがあって
 <input type="submit" name="submit_btn" value="送信" onClick="submit_form">

// JavaScript部分
// フォームの中にはsubmitボタンが複数あり、押されたsubmitボタンによって異なるのでこういった書き方をしています。
function submit_form(){
  document.form_name.action="aaa.php"
}

これだと新規サブウィンドウが立ち上がらずにただページを切り替えて表示することになってしまいます。
window.openを使用すればよさそうだということは分かりますが、実際にどのようにやればうまくいくのか分かりません
どうかよろしくお願いします!


1:[回答] m035 [2006/04/22 17:44 ][URL]

window.openの2番目の引数にウィンドウ名を入れておき、
ウィンドウを開いてから、formのtargetにウィンドウ名を指定すればおそらくはそのwindow.openしたウィンドウに表示できると思います。

あとは、アドレスバーなどが消せませんがtarget="_blank"にしてみるという簡易的な方法もあります。
また、この方法はJavaScript無効時のためにつけておいても損は無いかと思われます。


2:[質問] nana [2006/04/22 18:46 ]

m035様
ご回答ありがとうございます!
しかし、この方法だとすべてのsubmitボタンで新規ウィンドウが開いてしまうのではないでしょうか?
私の説明不足で大変申し訳ありませんが、form内には3つのsubmitボタンがあります。

【各submitボタン押下時の動作】
submitボタン1:ページを切り替えて表示
submitボタン2:ページを切り替えて表示
submitボタン3:新規ウィンドウを開いて表示

ですので、submitボタン3だけ新規ウィンドウで開きたいのです。
何か方法はございますでしょうか?


3:[回答] m035 [2006/04/22 22:04 ][URL]

submitボタン3の時だけtargetを_blankにしてsubmit後、targetを_topにしてみました。
一応、window.openの場合はコメントアウトしています。
(最近はポップアップブロックがうるさいですから)
それと、window.openしたウィンドウにsubmitできない場合があります。
その場合、大体はtargetが_blankとみなされて動作します。

<html>
<head>
<title>test</title>
<script type="text/javascript">
<!--
function send(){
//window.open("","new_win","");
document.forms[0].target="_blank";//"new_win"
document.forms[0].submit();
document.forms[0].target="_top";
return false;
}
//-->
</script>
</head>
<body>
<form>
<input type="submit" value="1">
<input type="submit" value="2">
<input type="submit" value="3" onclick="return send()">
</form>
</body>
</html>


4:[完了] nana [2006/04/26 20:11 ]

遅くなりました。
ありがとうございます、おかげ様で無事に作成できました!
m035様はJavaScripterなのですね!!あこがれます!!

本当にありがとうございました!

回答(必須): 状態:

お名前(必須):

URL:




[戻る]