Javascript 单击复选框时如何更改按钮的颜色
这里有一个按钮,并添加了两个复选框。我想做的是,当我点击任何复选框时,按钮的颜色应变为绿色或任何其他颜色。如果我取消选中所有框,按钮颜色应更改为灰色。请帮帮我。多谢各位Javascript 单击复选框时如何更改按钮的颜色,javascript,html,css,Javascript,Html,Css,这里有一个按钮,并添加了两个复选框。我想做的是,当我点击任何复选框时,按钮的颜色应变为绿色或任何其他颜色。如果我取消选中所有框,按钮颜色应更改为灰色。请帮帮我。多谢各位 .input{ 字体大小:粗体; 边界半径:1px; 背景颜色:灰色; } 用于选择图元 使用。复选框:选中以选择选中元素[] var elems=document.querySelectorAll('.check box'); var btn=document.querySelector('.btn elem');
.input{
字体大小:粗体;
边界半径:1px;
背景颜色:灰色;
}
- 用于选择图元
- 使用
以选择。复选框:选中
元素[]选中
var elems=document.querySelectorAll('.check box');
var btn=document.querySelector('.btn elem');
[]forEach.call(元素,函数(元素){
el.addEventListener('change',function(){
var checked=document.querySelectorAll('.check-box:checked');
如果(选中。长度){
btn.style.backgroundColor='绿色';
}否则{
btn.style.backgroundColor='';
}
});
});代码>
下面是一个仅使用纯javascript(无jquery)的示例:
var-button=document.getElementById(“mybtn”);
var chkbox=document.getElementsByClassName(“chkbox”);
函数onChangeListener(){
button.style.backgroundColor=“灰色”;
对于(变量i=0;i
稍微详细介绍一下人造丝的优秀答案,并使其更具活力。例如,可以使用数据属性指定按钮的颜色
<input type="checkbox" class="check-box" data-color="green">
<input type="checkbox" class="check-box" data-color="blue">
为了好玩,这里有一个CSS专用的解决方案:
#输入{
字体大小:粗体;
边界半径:1px;
背景颜色:灰色;
浮动:左;
}
输入:选中~#输入{
背景:绿色;
}
如果我使用多个按钮,代码应该是什么
复选框1-->按钮1
复选框2-->按钮2
var elems = document.querySelectorAll('.check-box');
var btn = document.querySelector('.btn-categ1');
[].forEach.call(elems, function(el) {
el.addEventListener('change', function() {
var checked = document.querySelectorAll('.check-box:checked');
if (checked.length) {
btn.style.backgroundColor = '#A6EBF2';
} else {
btn.style.backgroundColor = '';
}
});
});
这很好。它工作得很好。谢谢你的努力。这对我也有帮助。谢谢
var elems = document.querySelectorAll('.check-box');
var btn = document.querySelector('.btn-categ1');
[].forEach.call(elems, function(el) {
el.addEventListener('change', function() {
var checked = document.querySelectorAll('.check-box:checked');
if (checked.length) {
btn.style.backgroundColor = '#A6EBF2';
} else {
btn.style.backgroundColor = '';
}
});
});