OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

form の target(

  • 困ってます
  • 質問No.129502
  • 閲覧数7942
  • ありがとう数3
  • 気になる数0
  • 回答数4
  • コメント数0

form タグに
オプションとして存在する target に関してです。

form method="POST" action="***.cgi" target="new"

と記述すればsubmit実行時に結果を別ウィンドウに転送します
ここまではいいのでが・・・・

submitボタンが複数ある場合(ボタンによって処理が違う)
ボタンによって、このボタンは新しいウィンドウを開くが、
このボタンは開かない(同一ウィンドウ内に結果表示する)
というように設定することはできますか?

CGIとJavaSCRIPTの利用は可能です。
やはり別の form を立てるしかないのでしょうか?
(cgiに渡す値が大量なため一つのformで実現したいとおもっています)
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル11

ベストアンサー率 53% (199/370)

>新しいウィンドウは target="new" を使っています。
この場合、newという名前がついたwindowが新たに開かれますよね。
もう一度newをtargetとしたページを開いた場合、さっき開いたnewウィンドウに読み込まれます。
targetにはいくつか特別な値を入れることができます。
_blank  名前未設定の「新しい」ウィンドウを開きます。10回やれば10個新しいウィンドウが開きます。
_self   自分自身のウィンドウをターゲットとします。(フレームならフレーム)
_parent  フレーム構造の場合、自分自身の一つ上のフレームセットを解除してターゲットとします
_top   フレーム構造の場合、(階層が深くても)全部解除してターゲットとします。


>☆結果
>1.両方ともに新しいウィンドウが立ちあがります。
if文が間違っています。re=1という記述は代入ですので、条件判断としては・・・。

>2.buttonのvalue値が渡されません。
type="button"は送られないようですね。buttonの名前&値がほしい場合はNo.3の方が
かかれているようにsubmitにonClickを使う形になりますか。
この場合、ブラウザにJavaScriptの動作終了を待たずにsubmitしてしまうようなバグがあったらオワリなんですが・・・動くみたいなので大丈夫でしょう。
補足コメント
noname#1802

>この場合、ブラウザにJavaScriptの動作終了を待たずにsubmitしてしまうようなバグがあったらオワリなんですが・・・

そうですね。このあたり不安が残ります。
これはブラウザの問題になるのでしょうか?
とりあえず動いたのでいいとさせて頂きます。
この点の問題が発生したらまた質問させていただきます。

みなさま ありがとうございました。
投稿日時 - 2001-09-04 14:17:04
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル11

ベストアンサー率 53% (199/370)

formのNAME属性はformsとして記述します。 複数のsubmitボタンというのを、buttonにして、JavaScriptを走らせ、 その中で document.forms.target = "_self" とか、 document.forms.target = "_blank" とか指定してから document.forms.submit ...続きを読む
formのNAME属性はformsとして記述します。

複数のsubmitボタンというのを、buttonにして、JavaScriptを走らせ、
その中で
document.forms.target = "_self"
とか、
document.forms.target = "_blank"
とか指定してから
document.forms.submit()
したらいかがでしょう??
補足コメント
noname#1802

_self というのは
今ひらかれているウィンドウの名前になるのでしょうか?
(SCRIPTを記述する側のウィンドウ)
新しいウィンドウは target="new" を使っています。

☆formを以下に変更
target="new"を削除

☆submitを以下に変更
input type="button" name="B1" value="送信" onClick="send(i)"
(i は 0か1 になります)

☆SCRIPT追加
function send(re)
{
if(re=1) document.forms[0].target="new";
if(re=0) document.forms[0].target="_self";
documet.forms[0].submit();
}

☆結果
1.両方ともに新しいウィンドウが立ちあがります。
2.buttonのvalue値が渡されません。
何が変なのでしょう??
投稿日時 - 2001-09-04 13:27:28
お礼コメント
noname#1802

1.は解消されました。
JAVASCRIPTのIF構文は
IF(a==B) のように "=="なのですね。

2.に関しては
相変わらず value値がわたりません。
やっぱり submitですればいいのでしょうか?
投稿日時 - 2001-09-04 14:02:06


  • 回答No.2

formに名前は付けているんでしょうか? もし付けているのでしたら、 document.フォームの名前.target="新しいターゲット先" document.フォームの名前.submit(); で、実行可能です。 もしname属性を付けていないのであれば、配列として考えます。 formタグが一つしかなければ、 document.forms[0].target ...続きを読む
formに名前は付けているんでしょうか?
もし付けているのでしたら、

document.フォームの名前.target="新しいターゲット先"
document.フォームの名前.submit();

で、実行可能です。
もしname属性を付けていないのであれば、配列として考えます。
formタグが一つしかなければ、

document.forms[0].target="新しいターゲット先"
document.forms[0].submit();

で、アクセス可能です。
配列の場合、0オリジンになりますので、複数formタグがある場合は、0から順番に数えてください。
補足コメント
noname#1802

submitボタンに send(1), send(0) などを呼びだし
(onClickでいいのでしょうね?)
send() の引数(0 or 1)によって
terget の設定、ならびに
submit();
でできそうですね。
ありがとうございますやってみます。
投稿日時 - 2001-09-04 12:59:35
  • 回答No.3
レベル9

ベストアンサー率 47% (30/63)

はじめまして。 他の方の通りですが・・一応までに。 Javascriptによるtarget先設定で対応可能となります。 ◇HTML  例)  <input type="submit" value="ボタン1" onClick="javascript:target_func(0)">  <input type= ...続きを読む
はじめまして。
他の方の通りですが・・一応までに。

Javascriptによるtarget先設定で対応可能となります。

◇HTML
 例)
 <input type="submit" value="ボタン1" onClick="javascript:target_func(0)">
 <input type="submit" value="ボタン2" onClick="javascript:target_func(1)">

◇Javascript
function target_func( mode ) {
if( mode == 0 )
document.フォーム名.target="_top";
else
document.フォーム名.target="_blank";
return true;
}

上記の例では、
  ボタン1→現ブラウザのトップ
       ※現ページがフレームが切られているページでも、actionにて表示
        されるページが一面に表示される(_top)
  ボタン2→新しいウインドウを表示(_blank)

なお、これはIEでもNetscapeでも有効です。
※Windows で 5.5/4.7で確認済み

頑張って下さい。
お礼コメント
noname#1802

ありがとうございます。

対応ブラウザの記述までしていただいて感謝感激です。
投稿日時 - 2001-09-04 14:24:09
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ