You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击表格行切换元素背景异常求助:仅首行生效且无法复原

问题解决方法

问题1:仅表格首行点击有效

HTML里id是唯一标识,一个页面不能有多个相同id的元素。你给所有行都用了id="row",导致JS只能选中第一行。把<tr>的id改成class,就能选中所有表格行。

问题2:点击后无法恢复原始背景色

你只用了addClass添加高亮类,没有移除逻辑。用toggleClass可以实现「点击加类,再点击移除类」的切换效果,这样就能恢复传感器盒子的原始白色背景。


修改后的完整代码

<style> 
  .row{ /* 把#row改成.row */
    position:relative;
  }
  
  #sensor{
    width:30px;
    height:22px;
    margin: 0 0 -15px 0;
    background-size:100%;
    background: white;  
    background-repeat:no-repeat;
    overflow:hidden;
    border: 1px solid black;
    position:absolute;
    left: 70px; top: 100px;
    z-index: 1;
  }  
  #sensor.clicked {background: greenyellow}
</style> 

<div>
    <table> 
        <tbody>
            <tr class="row"> <!-- id替换为class -->
                <td> 第一行内容 </td>
            </tr>
            <tr class="row"> <!-- 所有行统一用class -->
                <td> 第二行内容 </td>
            </tr>
            <tr class="row">
                <td> 第三行内容 </td>
            </tr>
        </tbody>
    </table>
</div> 

<script>
  $('.row').on('click', function () { // 选中所有带.row类的行
     $("#sensor").toggleClass('clicked'); // 切换高亮类
  });
</script>

<div>
  <div id="sensor">CON</div>
</div>

内容的提问来源于stack exchange,提问作者springsissor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 00:30:04