select 由 table class 完成

select a td by table class

我在网上搜索了答案但是

$(".classname tbody tr td") or $("table.classname tbody tr td") 

不工作,我有一个 table,只有一个 class,我需要对 tds 等进行操作

它不起作用的唯一原因可能是 class 的名称,即:table name name-surname

html是这样的

<div class="tab">
  <table class="table name name-surname">
     <tbody>
        <tr>
          <td>name</td>
          <td>surname</td>
        </tr>
     </tbody>
  </table>
</div>

这是真正的问题还是我遗漏了什么? 有办法绕过它吗? 我无法添加 ID 或更改 class

的名称

为了使 $(".classname tbody tr td") $("table.classname tbody tr td") 工作,该表应该有一个名为 classname

的 class

console.log($(".classname tbody tr td"));
console.log($("table.classname tbody tr td"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<div class="tab">
  <table class="table name name-surname classname">
    <tbody>
      <td>name</td>
      <td>surname</td>
    </tbody>
  </table>
</div>

只需使用您的 table class 之一,例如 $(".table") 或者如果您想使用多个 class 通过 dot 连接它们,如下所示:$('.table.name.name-surname tbody tr td')

这是工作示例:

$(".table tbody tr td").each(function(itm,el) {
   console.log(el);
});

$('.table.name.name-surname tbody tr td').each(function(itm,el) {
   console.log(el);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="tab">
        <table class="table name name-surname">
            <tbody>
                <tr>
                    <td>name</td>
                    <td>surname</td>
                </tr>
            </tbody>
        </table>
    </div>

你总是可以这样写你的选择器.table.name.name-surname tbody tr td

$(".table.name.name-surname tbody tr td").each(function() {
  console.log($(this).html())
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>

<div class="tab">
  <table class="table name name-surname">
    <tbody>
      <td>name</td>
      <td>surname</td>
    </tbody>
  </table>
</div>

你必须使用“.”对于所有 类 [.table.name.name-surname] 和元​​素标签,只是他们的名字 [tbody td]
此外,您的 html.

中没有 tr 元素

console.log($(".table.name.name-surname tbody td"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>

<div class="tab">
  <table class="table name name-surname">
    <tbody>
      <td>name</td>
      <td>surname</td>
    </tbody>
  </table>
</div>