基于某些参数通过HTML表迭代



我正在尝试通过for循环获取我的HTML表的内部文本,但我想将其基于某些参数。下面您会看到我的HTML表的结构:

var Row = document.getElementById("exploreTable");
    var Cells = Row.getElementsByTagName("td");
    l = Cells.length
    var number = 1
    for (var i = 0; i < l; i++, number++ ) {
      console.log(number + ". " + Cells[i].innerText);
    }
<table id="exploreTable">
  <TR>
    <td></td>
    <A name="Explore"></A>
  </TR>
  <tr>
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="...&searchType=subject">
           Labor market
          </a>
          <a class="DetailLink"></a>
        </li>
      </ul>
  </td>
  </tr>
  <tr>
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="....&searchType=subject">
            Sex discrimination in employment.
          </a>
          <a class="DetailLink"></a>
        </li>
      </ul>
  </td>
  </tr>
  <tr>
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="...&searchType=DifferentType">
            Sex discrimination against women.
          </a>
          <a class="DetailLink"></a>
       </li>
      </ul>
  </td>
  </tr>
</table>

我不知道要添加什么,以便我的代码只能用ul/li/a迭代包含以下href属性的ul/li/a: &searchType=subject。我想获得文字价值"劳动力市场","雇员性别歧视"one_answers"对妇女的性别歧视"。我在想document.evaluate,但我不确定从哪里开始或放置代码。预先感谢!

尝试使用querySelectorAll()Attribute selector

[attr*=value]

代表具有 attrib 的属性名称的元素,其值包含在字符串中至少发生一个值。

var Row = document.getElementById("exploreTable");
var Cells = Row.querySelectorAll("td a[href*='&searchType=subject']");
l = Cells.length
var number = 1
for (var i = 0; i < l; i++, number++ ) {
  console.log(number + ". " + Cells[i].innerText);
}
<table id="exploreTable">
  <tr>
    <td>
      --Ommitted some codes for brevity-- 
   </td>
   <A name="Explore"></A>
  </tr>
  <tr>
    --Ommitted some codes for brevity--
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="...&searchType=subject">
           Labor market -- Philippines
          </a>
          <a class="DetailLink"></a>
        </li>
      </ul>
    </td>
  </tr>
  <tr>
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="....&searchType=subject">
            Sex discrimination in employment -- Philippines.
          </a>
          <a class="DetailLink"></a>
        </li>
      </ul>
    </td>
  </tr>
  <tr>
    <td class="ColRow">
      <ul>
        <li>
          <a class="DetailLink" href="...&searchType=DifferentType">
            Sex discrimination against women.
          </a>
          <a class="DetailLink"></a>
        </li>
      </ul>
    </td>
  </tr>
</table>

最新更新