簡體   English   中英

單擊表格行中基於該行文本的鏈接

[英]Click a link in a table row based on text in that row

我有一個表,表中有多行,最后有一個鏈接。

我想單擊包含要查找的文本的行中的鏈接。 例:

<table class="repeater large">
  <tbody>
    <tr>
      <td headers="Cardholder ID" nowrap="nowrap">1234</td>
      <td headers="Cardholder Name">JONATHAN</td>
      <td headers="Client Name">Some Company</td>
      <td headers="CardStatus">Closed</td>
      <td headers="Card Last Four">1234</td>
      <td headers="View" nowrap="nowrap"><a id="button" title="Activity" href="#">Activity</a></td>
    </tr>
    <tr class="alternaterow">
      <td headers="Cardholder ID" nowrap="nowrap">5555</td>
      <td headers="Cardholder Name">JONATHAN</td>
      <td headers="Client Name">Some Company</td>
      <td headers="CardStatus">Active</td>
      <td headers="Card Last Four">555</td>
      <td headers="View" nowrap="nowrap"><a id="button" title="Activity" href="#">Activity</a></td>
    </tr>
  </tbody>
</table>

我想單擊持卡人ID為“ 5555”的行上的錨點,我很好奇CapserJS的處理方式,並找到了執行此操作的特定選擇器。

我嘗試將表分解為數組並獲取特定的子代號。

我試圖創建一種方法來訪問表中的特定鏈接。

function getLinks() {
  var links = document.querySelectorAll('#page > table');
  return Array.prototype.map.call(links, function(e) {
    return e.getAttribute('id');
  });
}

我只需要在自己選擇的行上獲取該鏈接。

您可以遍歷表行,然后從第一個元素獲取ID。 如果文本等於您要查找的ID,則獲取最后一個元素,然后單擊();

var rows = document.querySelectorAll('table tbody tr');

[].forEach.call(rows, function(tr) {
  var td = tr.querySelector('td:first-child');
  if (td.innerText === '5555')
        tr.querySelector('td:last-child').click();
});

這里看到小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM