选择HTML表的最后一行(tr)的所有列而不选择第一列(td)

时间:2018-08-21 14:21:06

标签: jquery html html-table

我正在尝试为表的最后一行选择没有第一列的HTML。

例如,如果表看起来像这样-

<table>
  <tr>
    <td>col1</td>
    <td>col2</td>
    <td>col3</td>
  </tr>
  <tr>
    <td>col21</td>
    <td>col22</td>
    <td>col23</td>
  </tr>
</table>

输出应为-

<td>col22</td>    <td>col23</td>

我能得到的最接近的是-

var actions = $("table tr:last:not(:first-child)").html();

但这将打印所有列。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

.slide-zoom { height: 100% } 应该在最后一行的:not(:first-child)上,而不是在行本身上。

td

答案 1 :(得分:0)

要获得预期的结果,请使用下面的选项,获取最后一行的tds,它将返回数组,并循环遍历tds并控制除第一列以外的每一列

var actions = $("table tr:last td").each(function( i, val ) {
  if(i !==0){
      console.log($(this).html());
  }
})

codepen- https://codepen.io/nagasai/pen/zJxrGv

代码示例以供参考

var actions = $("table tr:last td").each(function( i, val ) {
  if(i !==0){
      console.log($(this).html());
  }
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
<head>
<style>
table {
    font-family: arial, sans-serif;
    border-collapse: collapse;
    width: 100%;
}

td, th {
    border: 1px solid #dddddd;
    text-align: left;
    padding: 8px;
}

tr:nth-child(even) {
    background-color: #dddddd;
}
</style>
</head>
<body>

<h2>HTML Table</h2>

<table>
  <tr>
    <th>Company</th>
    <th>Contact</th>
    <th>Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Centro comercial Moctezuma</td>
    <td>Francisco Chang</td>
    <td>Mexico</td>
  </tr>
  <tr>
    <td>Ernst Handel</td>
    <td>Roland Mendel</td>
    <td>Austria</td>
  </tr>
  <tr>
    <td>Island Trading</td>
    <td>Helen Bennett</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>Laughing Bacchus Winecellars</td>
    <td>Yoshi Tannamuri</td>
    <td>Canada</td>
  </tr>
  <tr>
    <td>Magazzini Alimentari Riuniti</td>
    <td>Giovanni Rovelli</td>
    <td>Italy</td>
  </tr>
</table>

</body>
</html>