Javascript 如何灰显非';没有检查吗?

Javascript 如何灰显非';没有检查吗?,javascript,Javascript,我有无序的复选框输入列表。一旦一个输入被选中,我希望其余的都是灰色的,并且选中另一个也将被突出显示的输入 添加/删除灰色类,而不是切换禁用 我的代码片段中的JS是我能找到的最接近的相关示例,但这不符合我的目的,因为它禁用了复选框,我只希望它们是灰色的 函数ckChange(ckType){ var ckName=document.getElementsByName(ckType.name); 选中的变量=document.getElementById(ckType.id); 如果(选中。选中)

我有无序的复选框输入列表。一旦一个输入被选中,我希望其余的都是灰色的,并且选中另一个也将被突出显示的输入


添加/删除灰色类,而不是切换禁用

我的代码片段中的JS是我能找到的最接近的相关示例,但这不符合我的目的,因为它禁用了复选框,我只希望它们是灰色的

函数ckChange(ckType){
var ckName=document.getElementsByName(ckType.name);
选中的变量=document.getElementById(ckType.id);
如果(选中。选中){
对于(变量i=0;i
输入{
不透明度:1;
}
输入。灰色{
不透明度:0.5;
}
  • 测试1
  • 测试2
  • 测试3
  • 测试4

您可以使用
添加/删除类,而不是禁用偏移

此外,在取消选中时,检查当前是否未选中“全部”,如果未选中,则为“全部”删除灰色,否则为选中的对象添加灰色

函数一次检查(ckName){
对于(变量i=0;i!el.checked)
如果(勾选){
对于(变量i=0;i
输入{
不透明度:1;
}
输入。灰色{
不透明度:0.3;
}
  • 测试1
  • 测试2
  • 测试3
  • 测试4

“通过选中另一个也将突出显示的输入选项,“我不明白您的意思。与其切换禁用,不如添加/删除灰色类(您已经为其创建了CSS)<代码>ckName[i].classList.add('grey')
ckName[i].classList.remove('grey')为什么不使用
input[disabled=true]
进行此操作?我不希望任何复选框被禁用,因为这正是我想要的。非常感谢!唯一的一件事是,我也想知道如何使标签变灰:)