質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

232閲覧

javascriptのプログラムで、選択肢の結果ごとに、異なるジャバスクリプトを呼び出すようにしたいです。

TreesShimi

総合スコア16

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2018/10/29 02:51

<script type="text/javascript"> // ◆◆◆ファンクション名◆◆◆ function keisan() { // ◆◆◆3種類のエリアを選択◆◆◆ var area={"area1":1,"area2":2,"area3":3}; var selectarea = area[document.querySelector('#area').value]; // ◆◆◆エリア選択結果◆◆◆ if (selectarea == 1){ <script src="test1.js"></script>  ⇐ 選択肢ごとに異なるスクリプトを呼び出すようにしたいが、どうコードを書けば良いか分からない! } else if (selectarea == 2){ <script src="test2.js"></script>  ⇐ 同上 } else if (selectarea == 3){ <script src="test3.js"></script>  ⇐ 同上 } </script> <form> <div class="dottbox"> エリアを選んでください ↓ ↓ ↓ ↓  <input type="button" value="結果を表示する" onclick="keisan();"> <div id="answer" style="white-space:pre;"></div> </form> </div>

上記ジャバスクリプトのプログラムで、選択肢(area1~area3)の結果ごとに、また別の異なるジャバスクリプト(test1.js、test2.js、test3.js)を呼び出すようにしたいのですが、コードの書き方が分からないため、ご教授いただけるとありがたいです。

もしかして、そもそもスクリプトの中で、別のスクリプトを呼び出すようなことはできないのでしょうか?

素人質問で恐縮ですが、よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

できないことはないですが全部呼び出して、必要な部分だけ使えば済む話では?

投稿2018/10/29 03:22

yambejp

総合スコア114837

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TreesShimi

2018/10/29 04:35

上のサンプルとは違って、実際に作成しているプログラムでは、全部のジャバスクリプトを書くとやたらと長くなるので、urlで呼び出す方がスッキリして良いと思ったですが。。。 スクリプトの記述は難しいのでしょうか?
guest

0

ベストアンサー

JavaScript

1function keisan() { 2 // ◆◆◆3種類のエリアを選択◆◆◆ 3 var area={"area1":1,"area2":2,"area3":3}; 4 var selectarea = area[document.querySelector('#area').value]; 5 6 // ◆◆◆エリア選択結果◆◆◆ 7 switch (selectarea) { 8 case 1: 9 case 2: 10 case 3: 11 const script = document.createElement('script'); 12 script.src = 'test' + selectarea.toString() + '.js'; 13 document.head.appendChild(script); 14 break; 15 default: 16 document.getElementById('answer').textContent = ''; 17 break; 18 } 19}

test1.js 例

JavaScript

1document.getElementById('answer').textContent = 'aria1\nok';

投稿2018/10/29 05:49

x_x

総合スコア13749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TreesShimi

2018/10/29 07:39

ありがとうございます! 最初は教えていただいた内容がよく分からなくて、色々あれこれいじったり、プログラムの意味を調べたりして悩みましたが、教えていただいたプログラムをそのまま素直に当てはめたら、正常に動作しました! まだよく分かっていないことで、test1.js例の'aria1\nok'の記述があるのですが、この\nokというのはどんな意味があるのでしょうか?? もし良ければ教えていただけると嬉しいですm(_ _)m
x_x

2018/10/29 07:48

ただの例でとくに意味などありません。 そこに何か表示させたいのかと思って適当な文字列を入れているだけです。 (昔BASICでは命令後にokって表示されたんですよ)
TreesShimi

2018/10/29 09:03

なるほど!分かりました!ありがとうございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問