javascriptのfor文 classNameを操作する際に連番の異なるidを回したい
解決したいこと
classList.addをしていく前に、classNameを一旦すべてクリアしたいです。
下記の通り実装しようとしたのですがうまくいきません。
どのように結合したらよいでしょうか?
該当するソースコード
<ul>
<li>
<button id="select-01" class="">
アラカルト
</button>
</li>
<li>
<button id="select-02" class="">
サンドイッチ
</button>
</li>
<li>
<button id="select-03" class="">
テイクアウト
</button>
</li>
<li>
<button id="select-04" class="">
オードブル
</button>
</li>
</ul>
//select-menu
let select01 = document.getElementById("select-01");
let select02 = document.getElementById("select-02");
let select03 = document.getElementById("select-03");
let select04 = document.getElementById("select-04");
$('#select-01').click(function () {
for (let i = 1; i < 5; i++) {
`select0${i}.className='';`
}
// select01.className='';
// select02.className='';
// select03.className='';
// select04.className='';
select01.classList.add("selected")
select02.classList.add("no-selected")
select03.classList.add("no-selected")
select04.classList.add("no-selected")
});
自分で試したこと
select01.className='';
これを×4つ(コメントアウト部分)で実行して、想定通りの挙動はしてくれましたが、
これをfor文で回したいと考えています。
ボタン01クリック⇒他の3つは背景色を変更
ボタン02クリック⇒他の3つは背景色を変更
というようにどれか一つだけ背景色(クラスselectedがついている)ありの状態にしたいと思っています。
宜しくお願いします。
0