gpt4 book ai didi

javascript - 使用 html 中的复选框在表格上切换颜色

转载 作者:行者123 更新时间:2023-11-28 17:12:31 24 4
gpt4 key购买 nike

所以我有这样一张 table

<table class="rest_tab" border="1">
<tbody><tr><th>Times</th><th></th><th></th></tr>
<tr><td <="" td=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox4" on=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox5" on=""></td></tr>
<tr><td <="" td=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox7" on=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox8" on=""></td></tr>
<tr><td <="" td=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox10" on=""></td><td align="right"><input type="checkbox" class="selectAll" id="Checkbox11" on=""></td></tr>
</tbody></table>

演示:

$(document).ready(function() {
$('.pretty tr').toggle(function() {
$(this).find(':checkbox').attr('checked', true);
$(this).toggleClass('red');
}, function() {
$(this).toggleClass('red');
$(this).find(':checkbox').attr('checked', false);
});
});
table {
font-family: 'Arial';
margin: 25px auto;
border-collapse: collapse;
border: 1px solid #eee;
border-bottom: 2px solid #00cccc;
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1), 0px 10px 20px rgba(0, 0, 0, 0.05), 0px 20px 20px rgba(0, 0, 0, 0.05), 0px 30px 20px rgba(0, 0, 0, 0.05);
}

table td:hover {
background: #C1FFC1;
}

table td:click {
background: #fcc;
}

table td:hover {
color: #000;
}

table th,
table td {
color: #999;
border: 1px solid #eee;
padding: 12px 35px;
border-collapse: collapse;
}

table th {
background: #00cccc;
color: #fff;
text-transform: uppercase;
font-size: 12px;
}

table th.last {
border-right: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="rest_tab" border="1">
<tbody>
<tr>
<th>Times</th>
<th></th>
<th></th>
</tr>
<tr>
<td <="" td=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox4" on=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox5" on=""></td>
</tr>
<tr>
<td <="" td=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox7" on=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox8" on=""></td>
</tr>
<tr>
<td <="" td=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox10" on=""></td>
<td align="right"><input type="checkbox" class="selectAll" id="Checkbox11" on=""></td>
</tr>
</tbody>
</table>

我希望能够,而不是仅仅在悬停时改变颜色,在为表中的每个框选中复选框时保留颜色。

我已经尝试了很长一段时间,但无法让 js 执行我想要的操作,我们将不胜感激任何帮助。

最佳答案

像这样的 css 规则将帮助您切换复选框选择

.selected{
background-color: #C1FFC1;
}

在你的js中你可以做这样的事情

$('.selectAll').change(function(){
$(this).closest('td').toggleClass('selected');
});

更新了您的 jsfiddle demo

$(document).ready(function () {
$('.selectAll').change(function(){
$(this).closest('td').toggleClass('selected');
});
});
table {
font-family:'Arial';
margin: 25px auto;
border-collapse: collapse;
border: 1px solid #eee;
border-bottom: 2px solid #00cccc;
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1), 0px 10px 20px rgba(0, 0, 0, 0.05), 0px 20px 20px rgba(0, 0, 0, 0.05), 0px 30px 20px rgba(0, 0, 0, 0.05);
}
table td:hover {
background: #C1FFC1;
}
table td:click {
background: #fcc;
}
table td:hover {
color: #000;
}
table th, table td {
color: #999;
border: 1px solid #eee;
padding: 12px 35px;
border-collapse: collapse;
}
table th {
background: #00cccc;
color: #fff;
text-transform: uppercase;
font-size: 12px;
}
table th.last {
border-right: none;
}
.selected{
background-color: #C1FFC1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="rest_tab" border="1">
<tbody>
<tr>
<th>Times</th>
<th></th>
<th></th>
</tr>
<tr>
<td <="" td=""></td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox4" on="">
</td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox5" on="">
</td>
</tr>
<tr>
<td <="" td=""></td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox7" on="">
</td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox8" on="">
</td>
</tr>
<tr>
<td <="" td=""></td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox10" on="">
</td>
<td align="right">
<input type="checkbox" class="selectAll" id="Checkbox11" on="">
</td>
</tr>
</tbody>
</table>

希望对你有帮助

关于javascript - 使用 html 中的复选框在表格上切换颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28998306/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com