game_esuenu
@game_esuenu (えぬ えす)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

値の組み合わせによって条件分岐したい

解決したいこと

セレクトボックスで選択した2つの値によって条件分岐し、テキストを出力したい

該当するソースコード

<form name="form1">
	<select name="text01">
	    <option value="10坪">10坪</option>
	    <option value="15坪">15坪</option>
	    <option value="20坪">20坪</option>
	    <option value="25坪">25坪</option>
	    <option value="30坪">30坪</option>
	</select>
	<select name="text02">
	    <option value="事務所">事務所</option>
	    <option value="一般商店">一般商店</option>
	    <option value="飲食店/理・美容院">飲食店/理・美容院</option>
	</select>
</form>
<input type="button" value="ボタン1" onclick="clickBtn1()"/>

<p>坪数 <span id="span1"></span>で、部屋タイプが <span id="span2"></span>のときは、
<span id="span3"></span>馬力になります。</p>
function clickBtn1(){

	const text01 = document.form1.text01;
    const text02 = document.form1.text02;

	// 値(数値)を取得
	const num01 = text01.selectedIndex;
	const num02 = text02.selectedIndex;
	//const num = document.form1.text01.selectedIndex;

	// 値(数値)から値(value値)を取得
	const str01 = text01.options[num01].value;
	const str02 = text02.options[num02].value;
	//const str = document.form1.text01.options[num].value;

	document.getElementById("span1").textContent = str01;
	document.getElementById("span2").textContent = str02;
}

自分で試したこと

セレクトボックスの text01,text02を出力するまではできましたが、
text01,text02の組み合わせによって を出力したい場合、
どのように記載すればいいかわかりませんでした。ご教授ください。

例)
セレクトボックスAの選択肢AとセレクトボックスBのBの場合、ABというテキストを出力。
セレクトボックスAの選択肢BとセレクトボックスBのCの場合、ACというテキストを出力。
セレクトボックスAの選択肢AとセレクトボックスBのDの場合、ADというテキストを出力。

0

2Answer

「javascript 条件分岐 複数」などで検索すると、コード例などが載った参考になるサイトが出てくると思います。
まずは、そういったサイトを参考に実装してみてください。

1Like

Comments

  1. @game_esuenu

    Questioner

    アドバイスありがとうございます。
    もちろんそういったキーワードで検索しても駄目だったので、こちらで質問をしてみたのですが。
    検索ワードが間違いではないということは知れたので、改めて検索して探すこともしてみます。
  2. 検索までされていたのですね。
    そこまでしているとなると、検索してでてきたコードを参考に、実際にコードを書いてみたりしていることと思います。

    試行錯誤している最中でのコードでも構わないので、条件分岐をしてみたコードと何処に躓いているのか記載していただけるとありがたいです。

求められているのはおそらくこういう感じだと思われるがcaseの拡張、部屋タイプの分岐、馬力計算式はご自分でどうぞ

switch (str01) {
  case "10坪":
    //馬力に必要な計算1
    break;
  default:

}

1Like

Comments

  1. @game_esuenu

    Questioner

    十分過ぎるほどの情報です。
    ググったものと照らし合わせると多分できそうです。ありがとうございます。
  2. 問題なければ本質問のCloseをお願いします。

Your answer might help someone💌