DOBON.NETプログラミング道掲示板

■35416 / 親階層)  style.displayだと効率悪いから違うやり方をしたいです。
□投稿者/ えっぴー 一般人(1回)-(2023/05/11(Thu) 13:00:19)
  • アイコン環境/言語:[javascript] 
    分類:[その他] 

    style.displayだと効率悪いから違うやり方をしたいです。
    以下はhtmlです。
    なぜ効率悪いかというと、
    一つ一つ、
    セレクトごとに、
    document.getElementById('Box1').style.display = "";と、
    document.getElementById('Box1').style.display = "none";
    を書かなければならないからです。
    構文が長くなってしまい、非効率です。
    しかし、document.getElementById自体1つしか書けないのです。
    for文を使う必要があるのです。
    ご教授願えたら幸いです。
    <div class="col-auto my-1">
    <label for="sample">選択してください</label>
    </div>
    <div class="col-auto my-1">
    <select class="form-control" id="sample" onchange="viewChange();">
    <option value="select1">one</option>
    <option value="select2">two</option>
    <option value="select3">three</option>
    </select>
    </div>
    <div class="col-auto my-5">
    <div id="Box1" class="my-5">
    <p>one</p>
    </div>
    <div id="Box2" class="my-5">
    <p>two</p>
    </div>
    <div id="Box3" class="my-5">
    <p>three</p>
    </div>
    </div>
    <script>
    function viewChange(){
    if(document.getElementById('sample')){
    id = document.getElementById('sample').value;
    if(id == 'select1'){
    document.getElementById('Box1').style.display = "";
    document.getElementById('Box2').style.display = "none";
    document.getElementById('Box3').style.display = "none";
    }else if(id == 'select2'){
    document.getElementById('Box1').style.display = "none";
    document.getElementById('Box2').style.display = "";
    document.getElementById('Box3').style.display = "none";
    }
    else if(id == 'select3'){
    document.getElementById('Box1').style.display = "none";
    document.getElementById('Box2').style.display = "none";
    document.getElementById('Box3').style.display = "";
    }
    }

    window.onload = viewChange;
    }
    </script>
    javascript全文を書いていただければ幸いです。
マルチポストを報告
違反を報告
削除キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: style.displayだと効率悪いから違うやり方をしたいです。 /魔界の仮面弁士
 
上記関連ツリー

Nomalアイコン style.displayだと効率悪いから違うやり方をしたいです。 / えっぴー (23/05/11(Thu) 13:00) #35416 ←Now
Nomalアイコン Re[1]: style.displayだと効率悪いから違うやり方をしたいです。 / 魔界の仮面弁士 (23/05/11(Thu) 13:27) #35417
  └Nomalアイコン Re[2]: style.displayだと効率悪いから違うやり方をしたいです。 / えっぴー (23/05/11(Thu) 14:00) #35418
    └Nomalアイコン Re[3]: style.displayだと効率悪いから違うやり方をしたいです。 / 福ちゃん (23/05/11(Thu) 17:34) #35419 解決み!
      ├Nomalアイコン Re[4]: style.displayだと効率悪いから違うやり方をしたいです。 / 魔界の仮面弁士 (23/05/11(Thu) 18:32) #35420
      └Nomalアイコン 【注意】ルールをお守りください / 管理人 (23/05/12(Fri) 03:16) #35421

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/


- Child Tree -