gpt4 book ai didi

javascript - 在 HTML 表格中选择和取消选择 td

转载 作者:太空宇宙 更新时间:2023-11-03 22:55:23 25 4
gpt4 key购买 nike

我的网站上有一个表格,我希望能够选择一个单元格并更改背景颜色,然后选择另一个单元格(不在同一行)并让第一个单元格恢复默认颜色,同时新选择的单元格更改背景颜色。我环顾四周,似乎只能找到我已经拥有的东西或关于一堆复选框的东西。我有一把 fiddle here .

这是我的 CSS:

.selected {
background-color: rgba(0,0,0,0.4) !important;
color: #fff;
}

这是我的 jquery:

<script type='text/javascript'>//<![CDATA[
$("#table2 td").click(function ()
{
$(this).toggleClass('selected').siblings().removeClass('selected');
});
//]]>
</script>

<script type='text/javascript'>//<![CDATA[
$("#table tr").click(function ()
{
$(this).toggleClass('selected').siblings().removeClass('selected');
});
//]]>
</script>

这是我的 HTML:

<body>

<table id='table'>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>Second Row</td>
<td>Still Second Row</td>
</tr>
</table>
<br><br>
<table id='table2'>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
<tbody>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>Second Row</td>
<td>Still Second Row</td>
</tr>
</tbody>
</table>
</body>

我可以得到 table可以很好地选择和取消选择行,但是 table2不能正常工作。我在一行中选择一个单元格,然后在同一行中选择一个单元格并且它有效,但如果我在另一行中选择一个单元格,它不会将第一个单元格更改回默认颜色。上面的 fiddle 显示了正在发生的事情。

我尝试添加 <tbody> ,但我不认为我做对了,因为结果没有改变。

我尝试添加 $('.selected').removeClass('selected');它部分起作用了。我可以选择一行中的一个单元格,然后选择另一行中的一个单元格,背景颜色会正确更改,但如果我第二次选择第一个单元格,它不会取消选择。

最佳答案

你为 td 选择 sibling 的方式是错误的,试试这个

$("#table2 tbody td").click(function ()
{
$(this).closest('table').find('td').not(this).removeClass('selected');
$(this).toggleClass('selected');
});

Fiddle

关于javascript - 在 HTML 表格中选择和取消选择 td,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38643557/

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