みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

1つのURLを入力して複数のページを開きたい

フォームに入力したURLを使って複数のページを開きたいのですが、どうしたらよいのでしょうか。

例えば、下記のようなフォームにURLを入力すると別ウインドウでページがひらきますが、
<form>
<input name="url" type="text" value="" style=" width:400px; "><br>
<input type="button" value="開く" onclick="window.open(this.form.url.value,'freelink')">
</form>

このような動作で、入力したURLが
http://www.post.japanpost.jp/
だとすると、
その入力したURLを参照して別ウインドウで
http://www.post.japanpost.jp/service/you_pack/index.html
http://www.post.japanpost.jp/services/bank/account/
を同時に開きたいのです(URLは郵便局ホームページです)。
~.jp/以下をタグ中に入れて置いて、入れた分だけのウインドウを開いて
表示させたいのですが、どのようにしたらいいのでしょうか。

皆さまどうかよろしくお願いいたします。

投稿日時 - 2013-06-07 00:03:00

QNo.8122797

困ってます

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

まず以下でウィンドウが二つ開きます。
---------
<form>
<input name="url" type="text" value="" style=" width:400px; "><br>
<input type="button" value="開く" onclick="window.open(this.form.url.value,'freelink');window.open(this.form.url.value,'freelink2')">
</form>
---------
freelinkはウィンドウ名です。被ると同じタブで二回遷移するだけなので、新しいものを用意したいなら「2」を付けるなど操作してください。
そしてURLに細工したいならプラス演算子で文字列を結合しながらopen関数に渡します。以下のように。
---------
<form>
<input name="url" type="text" value="" style=" width:400px; "><br>
<input type="button" value="開く" onclick="window.open(this.form.url.value+'service/you_pack/index.html','freelink');window.open(this.form.url.value+'services/bank/account/','freelink2')">
</form>
---------
ただ私にとってこれが何に役立つのか想像がつかないので私の質問への解釈が間違っている気がしなくもないです。
されたいことと食い違っていたら補足を願います。

投稿日時 - 2013-06-07 00:35:35

補足

ご回答ありがとうございます。
言葉足らずで失礼いたしました。

用途としては作成したデータの確認用として
ローカル環境に置いて使用することを考えています。

質問ではURLを追加したいと書きましたが、
入力したURLの一部を抜き出すこともしたく思います。
具体的にいいますと、
http://www.xxxxxx.co.jp/b/
というURLを入力すると、下記の4つのウインドウを開きたいのです。

1. http://www.xxxxxx.co.jp/b/ccc.html
2. http://www.xxxxxx.co.jp/b/ddd.html
3. http://www.xxxxxx.co.jp/a/b/eee.html
4. http://www.xxxxxx.co.jp/a/b/fff.html
※htmlのファイル名は4つとも固定です。
※ディレクトリ名はaは固定、bは可変です。

1と2はご回答の内容で概ねうまくいきましたが、
3と4のようにURLのjpと/bの間にaというディレクトリが
入るページも表示したのです。

また、IEでは私の意図している動作でしたが、Google Chromeでは
2つめのページがタブではなく別ウインドウで表示されてしまいます。
こちらもできればGoogle ChromeでもIEと同じ動作にならないものなのでしょうか。

大変長くなりましたが、よろしくお願いいたします。

投稿日時 - 2013-06-07 23:24:08

お礼

放置してしまい失礼いたしました。

投稿日時 - 2013-08-13 23:33:58

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

私はIEしか使いませんが
http://www.nonukes-maria.net/construction/javascript/111117.html
クロームは設定で何かが起きるかもしれませんね。
ローカルなら自分の設定で十分ですし

文字の一部抜き出しについてはJavascriptの「正規表現」を参考にしてみてください。

投稿日時 - 2013-06-07 23:41:34

お礼

ご回答ありがとうございました。
URL拝見いたしました。
クロームの設定と第2引数の省略を試しましたが
二つめのURLが開かずうまくいきませんでした。
クロームの設定とJavascriptの設定の両方を変更しないと
ダメなのでしょうか。

投稿日時 - 2013-06-08 01:06:07

ANo.2

ポップアップは悪質なサイト認定されるリスクがあります

投稿日時 - 2013-06-07 10:25:22

補足

ご回答ありがとうございます。
言葉足らずで失礼いたしました。

用途としては作成したデータの確認用として
ローカル環境に置いて使用することを考えています。

質問ではURLを追加したいと書きましたが、
入力したURLの一部を抜き出すこともしたく思います。
具体的にいいますと、
http://www.xxxxxx.co.jp/b/
というURLを入力すると、下記の4つのウインドウを開きたいのです。

1. http://www.xxxxxx.co.jp/b/ccc.html
2. http://www.xxxxxx.co.jp/b/ddd.html
3. http://www.xxxxxx.co.jp/a/b/eee.html
4. http://www.xxxxxx.co.jp/a/b/fff.html
※htmlのファイル名は4つとも固定です。
※ディレクトリ名はaは固定、bは可変です。

1と2はご回答の内容で概ねうまくいきましたが、
3と4のようにURLのjpと/bの間にaというディレクトリが
入るページも表示したのです。

また、IEでは私の意図している動作でしたが、Google Chromeでは
2つめのページがタブではなく別ウインドウで表示されてしまいます。
こちらもできればGoogle ChromeでもIEと同じ動作にならないものなのでしょうか。

大変長くなりましたが、よろしくお願いいたします。

投稿日時 - 2013-06-07 23:24:19

お礼

放置してしまい失礼いたしました。

投稿日時 - 2013-08-13 23:34:22

あなたにオススメの質問