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

jQuery选项卡表格首次点击消失、内部链接新开窗口规则不生效如何修复

问题原因分析
  • 问题1(首次点击表格元素内容消失):你绑定的点击事件选择器$('#tabs a')匹配了#tabs容器内所有a标签,包含表格内的跳转链接,点击表格链接时会错误触发选项卡加载逻辑,同时你的代码里没有AJAX写入的目标元素.tabs-content,导致原有内容被清空后找不到新内容渲染。
  • 问题2(链接不弹窗直接跳转):原弹窗绑定逻辑仅在页面首次加载时执行,只绑定了当时已存在的DOM元素,AJAX动态加载进来的表格链接没有被绑定弹窗事件,所以会执行默认跳转逻辑。
完整修改方案

1. 修正HTML内容容器

在原有表格内容外层加.tabs-content容器,方便AJAX内容写入:

<div id="tabs">
  <ul>
    <li><a href="#tabs-1">Al-Ar</a></li>
    <li><a href="#tabs-2">Ar-D</a></li>
    <li><a href="#tabs-3">E-Ha</a></li>
    <li><a href="#tabs-4">Ha-J</a></li>
    <li><a href="#tabs-5">K-Mo</a></li>
  </ul>
  <table class="tablica">
    <tbody>
      <tr class="tr1">
        <td></td>
      </tr>
      <tr class="tr">
        <td>
          <!-- 新增.tabs-content容器 -->
          <div class="tabs-content">
            <div id="tabs-1">
              <table class="pol">
                <tbody>
                  <tr>
                    <td class="td10" colspan="4">Al..Ar</td>
                  </tr>
                  <tr>
                    <td class="td1"><a href="1.html">1</a></td>
                    <td class="td2">1</td>
                  </tr>
                  <tr>
                    <td class="td1"><a href="2.html">2</a></td>
                    <td class="td2">2</td>
                  </tr>
                  ...
                  <tr>
                    <td class="td1"><a href="205.html">205</a></td>
                    <td class="td2">205</td>
                  </tr>
                </tbody>
              </table>
            </div>
          </div>
        </td>
      </tr>
      <tr class="tr1">
        <td></td>
      </tr>
    </tbody>
  </table>
</div>

2. 修正选项卡点击事件

把选择器限定为仅选项卡栏的链接,避免误触发表格内链接的事件:

$('#tabs > ul a').click(function(e) {
  e.preventDefault();
  var url = "./tabsContent1.php";
  var urlId = $(this).attr("href");
  $(".tabs-content").load(url + " " + urlId);
});

3. 修正弹窗绑定逻辑

改为事件委托模式,兼容动态加载的链接元素,无需重复绑定,直接替换原有onload绑定逻辑即可:

$(document).on('click', 'a[href*="hotel"]', function(e) {
  if(this.href.match(/.*hotel\d+\.html/)){
    window.open(this.href,'a','width=740px, height=750px, resizable=yes, scrollbars=yes, left=20px, top=20px');
    e.preventDefault();
  }
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 20:39:02