私は3つの「ボックス」を作成し、各ボックスにはボタンが含まれています。ボタンをクリックするとボックスが非表示になり、もう一度クリックするとボックスが表示されます。
これは私のhtmlコードです:
<div id="SC1_A_"> <!-- BOX -->
<div id="SC1_B_" onClick="SC1();" class="something"> </div> <!-- BUTTON -->
</div>
<div id="SC2_A_">
<div id="SC2_B_" onClick="SC2();" class="something"> </div>
</div>
<div id="SC3_A_">
<div id="SC3_B_" onClick="SC3();" class="something"> </div>
</div>
これは私のJavaScriptコードです:
<script type="text/javascript">
function SC1(){
var SC1_A = document.getElementById('SC1_A_);
var SC1_B = document.getElementById('SC1_B_);
if (SC1_A.style.display == 'block' || SC1_A.style.display == ''){
SC1_A.className = 'something';
SC1_B.className = 'something else';}
else {SC1_A.className = 'something else';
SC1_B.className = 'something';}
}
}
</script>
上記の例は機能しますが、ボタンごとに3つの同様のスクリプトを作成する必要があります。そこで、forループを使用して、以下のスクリプトのようなものを作成します。ご想像のとおり、機能しませんでした。どうすればそれを機能させることができますか?
<script type="text/javascript">
for (i=1; i<10; i++){
function SCi(){
var SCi_A = document.getElementById('SC'+i+'_A_');
var SCi_B = document.getElementById('SC'+i+'_B_');
if (SCi_A.style.display == 'block' || SCi_A.style.display == ''){
SCi_A.className = 'something';
SCi_B.className = 'something else';}
else {SCi_A.className = 'something else';
SCi_B.className = 'something';}
}
}
</script>
質問が簡単すぎると思われる場合は、反対票を投じないでください。ここで私に助けてください!!! 前もって感謝します!!!