javascript - 如何在javascript中做彩色复选框

标签 javascript css checkbox

这是一个显示学生出勤报告的页面代码。如果选中绿色,则我想要彩色复选框,否则为红色。请帮助我做到这一点。我尝试过,但没有成功。现在我只能单击一个复选框改变颜色。检查此图像:/image/JgICk.png

<style>
.checkbox {
  margin: 0 0 2em 2em;
}
.checkbox .tag {
  color: #595959;
  display: block;
  float: left;
  font-weight: bold;
  position: relative;
  width: 120px;
}
.checkbox label {
  display: inline;
}
.checkbox .input {
  display: none;
}
.input + label {
  -webkit-appearance: none;
  background-color: red;
  border: 1px solid #cacece;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
  padding: 9px;
  display: inline-block;
  position: relative;
}
.input:checked + label:after {
  background-color: green;
  color: #595959;
  content: '\2714';
  font-size: 10px;
  left: 0px;
  padding: 2px 8px 2px 2px;
  position: absolute;
  top: 0px;
}
</style>
 <?php

if(isset($_POST["submit"]))
{
    //Here goes array
    for($i=0;$i<count($_POST['student']);$i++)
    {
        $name=$_POST['student'][$i];
        echo $name;
    }
}
?>

</head>
<body >
Report Attendance
<form name="myform" action="" method="post">
<div class="checkbox">
<table border="1" cellspacing="2" cellpadding="5" summary="">
<?php while ($row = mysql_fetch_assoc($res)){?>
<tr><td> <input type="checkbox" class="input" id="input"  name="student[]" value="<?php echo $row['stu_id']; ?>" checked="checked"   > <?php echo $row['stu_name'] ; ?> <label for="input"></label>
<br/></td></tr>
<?php }?>

</table>
<input type="submit" name="submit" value="submit"/>
</div>
</form>
</body>
</html>

最佳答案

您只需将 id 设置为唯一,并且标签应指向唯一的 id。这是带有静态 HTML 的 jsfiddle https://jsfiddle.net/sua2wsm1/

您的 HTML 页面中需要进行以下更改

<table border="1" cellspacing="2" cellpadding="5" summary="">
<?php while ($row = mysql_fetch_assoc($res)){?>
<tr><td> <input type="checkbox" class="input" id="input<?php echo $row['stu_id']; ?>"  name="student[]" value="<?php echo $row['stu_id']; ?>" checked="checked"   > <?php echo $row['stu_name'] ; ?> <label for="input<?php echo $row['stu_id']; ?>"></label>
<br/></td></tr>
<?php }?>

关于javascript - 如何在javascript中做彩色复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35291633/

相关文章:

javascript - react 导航未定义错误

javascript - 从 typescript 访问 HTML header 中包含的 javascript 变量

javascript - 在javascript中操作多维数组

javascript - 检测输入的空字段

html - 响应式页脚在移动设备上位于顶部;粘在手机模拟器和桌面上的底部?

javascript - jQuery 的意外行为被隐藏并向下滑动

html - 多个复选框,只有一个可选

c# - Asp.Net 在 json 中返回自定义对象

javascript - 选中时将复选框的值放入数组

javascript - 在 react 中切换动态创建的复选框