javascript - Change according to input check
问题描述
How can i solve this problem: i have many inputs on the page. when I click on an input and it is check it has to change the color to the label depending on it
$(document).ready(function() {
$('label.boxextra').each(function() {
$(this).click(function() {
if ($("input[type='checkbox']").is(':checked')) {
$('label.boxextra').css('background-color', 'red');
} else {
$('label.boxextra').css('background-color', '#fff');
}
});
});
});
label.boxextra {
background: #fff;
border: 1px solid #D4D4D4;
padding: 10px;
color: #000000;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label for="extra_0" style="display:inline; margin-right: 10px;" class="boxextra"><input type="checkbox" data-multiple="1" id="extra_0" name="extra[]" value="rosii"> rosii</label>
<label for="extra_1" style="display:inline; margin-right: 10px;" class="boxextra"><input type="checkbox" data-multiple="1" id="extra_1" name="extra[]" value="castraveti"> castraveti</label></td>
解决方案
this
使用绑定到您的侦听器来查找内部的相关元素
$(document).ready(function() {
$('label.boxextra').each(function() {
var label = $(this);
label.click(function() {
if (label.find("input[type='checkbox']").is(':checked')) {
label.css('background-color', 'red');
} else {
label.css('background-color', '#fff');
}
});
});
});
label.boxextra {
background: #fff;
border: 1px solid #D4D4D4;
padding: 10px;
color: #000000;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label for="extra_0" style="display:inline; margin-right: 10px;" class="boxextra"><input type="checkbox" data-multiple="1" id="extra_0" name="extra[]" value="rosii"> rosii</label>
<label for="extra_1" style="display:inline; margin-right: 10px;" class="boxextra"><input type="checkbox" data-multiple="1" id="extra_1" name="extra[]" value="castraveti"> castraveti</label></td>
推荐阅读
- websphere - WebSphere eXtreme Scale V8.6 IBM Extreme Scale
- reactjs - 如果选择了值,则反应选择保持焦点边框颜色
- configuration - php-cs-fixer - 禁用/修改 no_superfluous_phpdoc_tags 规则
- search - Alt + Left 和 Alt + Right 允许我在 Utop 中的自动完成之间切换,但选项卡将返回到第一个选择
- javascript - 使用 .filter 删除数组中的重复值
- angular - cdkDropListDropped="drop($event)" 未触发,带有数据源的 mat 表
- reactjs - How to use an `onClick` event to stop calling a function which is called by the useEffect hook?
- php - 错误值:total_tax_amount
- python - 如何在 django 查询集的 values_list() 函数中获取日期时间字段作为字符串?
- r - 将列表列表转换为单个数据框,第一列由 R 中的第一个值(对于每个列表)填充