我有一个 for 循环,它根据从 mySQL 数据库接收到的信息形成一个复选框列表。下面是形成复选框的 for 循环(删除了不必要的代码)。
for ($i = 1; $i <= count($descriptionIDsArray); $i++) {
$statuses = mysql_fetch_assoc(mysql_query(sprintf("SELECT status, description FROM status_descriptions WHERE description_id='$i'")));
$status = $statuses["status"]; ?>
<input type="checkbox" value="<?php echo $status ?>" <?php if ($check == 1) {echo "checked='checked'";} ?> onchange="checkBox()" /><?php echo $description ?><br />
<?php } ?>
选中或取消选中一个框会调用以下函数:
<script type="text/javascript">
function checkBox() {
var status = $("input:checkbox").val();
document.getElementById("test").innerHTML = status;
}
</script>
我可以出现在“测试”中的唯一值是第一个复选框的值。如果我在整个初始 for 循环中回显 $status ,所有值都会正确显示,因此当 Javascript 代码检索相应值时似乎会出现问题。