
Javascriptかもしれませんが、perl内で使いたいので一応ここで‥‥
A.cgiからフォームに入力後送信、B.cgiに飛びます。
その時、B.cgiを新しく開いたウィンドウに表示したいので下記のようにしてます。
A.cgi側フォーム
<FORM METHOD="post" ACTION="B.cgi" TARGET="_blank"></FORM>
この_blankで新しい窓は開きますが、この開いた窓の大きさを指定するにはどうしたらいいんでしょうか?
Javascriptはあまり良くわかりませんが、window.open()くらいなら使った事あります。これだと大きさも指定できますが、パラメーター(?)を渡しつつ、開いた窓の大きさも指定したいのです。
渡したいパラメーターは1種類(しかも変数で代入できる)なので、フォームじゃなくても
<A HREF="B.cgi=?$i"></A>って格好でもいいです。($iの値は固定されていない)
何か私でもできる簡単な方法はありますか?
No.2ベストアンサー
- 回答日時:
すみません。
以下のままだと要望に応じることが出来ない状態でした。$iは何に変えてもOKです。A.cgi
修正前
<INPUT type=hidden name=X value=500>
<INPUT type=hidden name=Y value=500>
修正後
<INPUT type=hidden name=X value=$i>
<INPUT type=hidden name=Y value=$i>
修正前
<FORM action=B.cgi>
修正後
<FORM METHOD="post" ACTION="B.cgi" TARGET="_blank">
この回答への補足
今実験してみたら、見る側で窓の大きさ変更できました(^^; 何かと勘違いしてたようです。
これなら、標準的なブラウザに対応してるし使えそうですね!
ありがとうございました。
回答ありがとうございます。
resizeも考えたのですが、resizeだと見る側の人が窓のサイズを変更できませんよね?それが少し不便かと。
しかし、hiddenでサイズの要素を送るなんて事考えてもみませんでした。何か少しヒントになった気がします。今後別の事にもいかせそうですしね。
ありがとうございました!
No.3
- 回答日時:
window.openを使うなら2通り考えられます。
まず、上手くいかないブラウザがある方法。(^^;
フォームのsubmitで
<INPUT TYPE="submit" VALUE="送信" onClick="window.open('','hogehoge','width=200,height=200');">
として、ボタンが押された際のonclickイベントでウインドウを起動しておいて、そのウインドウめがけてフォームのアクションを飛ばしてやる方法。
"_blank"は予約されたターゲット(新しいウインドウを開く)であるため、うまくいかないので、まったく違う名前"hogehoge"などというターゲットに変更します。
また、タブブラウザや一部のブラウザでは上手くいかない可能性があります。
もう一つのやり方としては、アンカータグでやる方法。
2通りあります。
<script language="javascript">
<!--
function new_window(url,name,status) {
window.open(url,name,status);
return;
}
//-->
</script>
などという関数を作っておいてから、hrefで直接その関数を呼び出す方法。
<a href="javascript:new_window('a.html','hogehoge','width=200,height=200')">リンク</a>
または、onclickイベントで呼び出す方法です。
<a href="#" onclick="new_window('a.html','hogehoge','width=200,height=200');return false;">リンク</a>
onclickイベントの場合は、関数の方で「return;」となっている部分を「return false;」と書いておき、
<a href="#" onclick="return new_window('a.html','hogehoge','width=200,height=200');">リンク</a>
と書くこともできます。
回答ありがとうございます。
returnの意味を調べてみたのですが、今いちよく理解できず‥‥戻り値??何が戻るの?ってな感じです(javascriptめ)
で、別にonclickじゃなくてもいいので、直接hrefでやりました。
フォームに入力した値(複数)も渡したかったのですが、今回はよくわからないという事で、最低限渡したかった$iだけをwindow.open("B.cgi?$i" ,"~", "width=~,height=~")
で渡してB.cgi側でフォーム入力してもらう事にしました。(それでも全然問題ない)
window.openを使った事があるんだから、よくよく考えれば簡単だったんですよね(^^;
人に教えてもらって気付く‥‥
ありがとうございました!
No.1
- 回答日時:
FORMで使う場合はhidden要素でサイズを送信し、
受け取るCGIで
<SCRIPT language="JavaScript">
<!--
resizeTo($X, $Y);
//-->
</SCRIPT>
とJAVAスクリプトで指定してみてはいかがでしょうか?
----
A.cgi
----
<FORM action=B.cgi>
<INPUT type=hidden name=X value=500>
<INPUT type=hidden name=Y value=500>
<INPUT type=submit value=送信>
</FORM>
----
B.cgi
----
$X = $FORM{'X'};
$Y = $FORM{'Y'};
print <<"EOM";
<SCRIPT language="JavaScript">
<!--
resizeTo($X, $Y);
//-->
</SCRIPT>
EOM
※動作未確認
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Wallpaper Engineでおすすめの...
-
Perlのエラーについてご教授く...
-
bashスクリプト
-
perlで2次元配列をサブルーチ...
-
Strawberry Perl for Windows ...
-
ターミナルで特定の文字と文字...
-
INDIRECT 横に再度抽出したい
-
Perl 数値にスラッシュを入れる...
-
Perlの全角スペース 文字化け?
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
Perlで時間の計算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
チェックボックスの返す値
-
別formのhidden項目を自form値...
-
FC2 掲示版のカスタマイズの仕...
-
掲示板の文字色指定について
-
Error: No Recipient というエ...
-
CGIで得た内容をHTMlページに代入
-
CGIでチェックボックスを使...
-
アンケートフォームで前のペー...
-
配列の中身がイコールならばと...
-
チェックBOXにチェックを入...
-
python subprocessに関する質問
-
チェックボックスでのvalue値の...
-
hiddenで送ったデータの取り出し方
-
CGIでラジオボタンの選択結果を...
-
SUN BBSの改造方法
-
wordの数式について 定積分を書...
-
掲示板(kentさんの所のsunbbs...
-
ラジオボタンが両方とも選択で...
-
「value」に2つの値をセットす...
-
[HTML]プルダウンメニューの横...
おすすめ情報