我試圖當我點擊複選框隱藏字段的「禮物」ID變得可見如果我取消選中該複選框,然後隱藏字段的「缺席」ID變得可見。但是當我點擊複選框只有第一行表格受到影響,而其他行不影響複選框處於選中狀態或未選中狀態。以下是HTML代碼複選框效果只有一個表
<table class="table table-bordered">
<tr>
<td><strong> Name</strong></td>
<td><strong>Email</strong></td>
<td><strong>Phone</strong></td>
<td><strong>Cnic</strong></td>
<td><strong>Attendence</strong></td>
<td><strong>Status</strong></td>
</tr>
<?php foreach($user as $USER){?>
<form method="post" action="">
<tr>
<td>
<input type="text" name="name" value="<?=$USER->name;?>" readonly>
<input type="hidden" name="u_id" value="<?=$USER->u_id;?>">
</td>
<td>
<input type="text" name="email" value="<?=$USER->email;?>" readonly>
</td>
<td>
<input type="text" name="phone" value="<?=$USER->phone;?>" readonly>
</td>
<td>
<input type="text" name="cnic" value="<?=$USER->cnic;?>" readonly>
</td>
<td style="text-align: center">
<input type="checkbox"name="checkbox"id="checkbox" onclick="visibility()">
</td>
<td>
<span style="visibility: hidden; color: green;"><input type="text" name="att" value="Present" id="present"></span>
<span style="visibility: hidden; color: red;"><input type="text" name="att" value="Absent" id="absent"></span>
</td>
</tr>
<?php }?>
</form>
</table>
而且下面是JavaScript代碼
<script type="text/javascript">
function visibility() {
if (document.getElementById("checkbox") . checked == true){
document.getElementById("present").style.visibility ="visible";
document.getElementById("absent").style.visibility = "hidden";
}else{
document.getElementById("absent").style.visibility = "visible";
document.getElementById("present").style.visibility = "hidden";
}
}
</script>
使用類選擇元素要檢查的,而不是ID即document.getElementsByClassName(‘複選框’),你應該罰款 –
'id'屬性應該是唯一的以區分複選框 –
通過使用類名稱,不會影響 –