Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 更改标签';s颜色,基于复选框状态_Html_Css_Checkbox - Fatal编程技术网

Html 更改标签';s颜色,基于复选框状态

Html 更改标签';s颜色,基于复选框状态,html,css,checkbox,Html,Css,Checkbox,我被几行代码困住了,我无法解决我的问题,所以我请求你的帮助 我想根据复选框的状态(法语和德语)更改标签的颜色(id selectSubject) 选择您的主题 法语 jQuery版本 您需要做的是捕获复选框上的更改事件并切换一个类 (单击它们时,添加css类) 您可以像这样使用jquery来实现这一点 $('#french').on('change', function() { //When fench checkbox is ticked, add this class, or re

我被几行代码困住了,我无法解决我的问题,所以我请求你的帮助

我想根据复选框的状态(法语和德语)更改标签的颜色(id selectSubject)


选择您的主题
法语
jQuery版本

您需要做的是捕获复选框上的更改事件并切换一个类

(单击它们时,添加css类)

您可以像这样使用jquery来实现这一点

$('#french').on('change', function() {
    //When fench checkbox is ticked, add this class, or remove it 
  $('#selectSubject').toggleClass('add-red-color');
});
$('#german').on('change', function() {
  //When german checkbox is ticked, add this class, or remove it 
  $('#selectSubject').toggleClass('add-green-color');
});

检查此工作

我的最终解决方案-基于Proeviz答案

                    var french = document.getElementById('french');
                    var german = document.getElementById('german');
                    var cbs = document.querySelectorAll('input[type=checkbox]');
                    for(var i = 0; i < cbs.length; i++) {
                      cbs[i].addEventListener('change', function() {
                        if(german.checked || french.checked) {
                          document.getElementById("selectSubject").style.color = "black";
                        } else {
                          document.getElementById("selectSubject").style.color = "#A9A9A9";
                        }
                      });
                    }
var french=document.getElementById('french');
var german=document.getElementById('german');
var cbs=document.querySelectorAll('input[type=checkbox');
对于(变量i=0;i
如果您只想使用css,则如果您的html是以这种方式构建的,则它不起作用。复选框必须位于标签之前。您可以使用javascript检查状态并相应地设置标签。您的问题没有意义。如何将
selectSubject
的颜色应用于标签?非常感谢@如果这对你有帮助,请接受答案。如果你需要进一步的帮助,请在你的帖子中添加更新。好的,对不起,我对这个社区很陌生,我需要学习一些东西,但我正在尽我最大的努力。再次感谢您!
                    var french = document.getElementById('french');
                    var german = document.getElementById('german');
                    var cbs = document.querySelectorAll('input[type=checkbox]');
                    for(var i = 0; i < cbs.length; i++) {
                      cbs[i].addEventListener('change', function() {
                        if(german.checked || french.checked) {
                          document.getElementById("selectSubject").style.color = "black";
                        } else {
                          document.getElementById("selectSubject").style.color = "#A9A9A9";
                        }
                      });
                    }