我可以使用Firebug控制台在本地删除网站上的表格单元格吗?

Can I locally remove table cells on a website using the Firebug console?

本文关键字:网站 表格 单元格 删除 可以使 Firebug 控制台 我可以      更新时间:2023-09-26

>上下文:我正在尝试从搜索引擎表格提供的列表中选择大学课程。搜索引擎仅在有前缀(即 COSC3COSC350)时才识别后缀。3350 不会返回任何结果。

我想知道的是,是否可以使用 Firefox 的 Firebug 来解析控制台命令,该命令将删除所有不包含 100 级论文的表格行。

伪代码:

string regex = [A-Z]{4};
for each(tr) {
    for each(td) {
        if(!td.contains(regex + "1") {
            tr.delete();
        }   
    }
}

我的伪代码可能非常无效,但它旨在让您大致了解我想做什么。

是的,这是可能的。

伪代码中概述了一般思想。唯一需要注意的棘手事情是,在"实时"HTMLCollection上操作时,您不能像数组一样循环它们。

// get all rows
var table = document.getElementById('my-table');
var trs = table.getElementsByTagName("tr");
// go through each row
var i = 0;
while (i < trs.length) {
  var tds = trs[i].getElementsByTagName("td");
  var deleted = false;
  // go through each cell of this row
  var j = 0;
  while (j < tds.length) {
    if (/[A-Z]{4}1/.test(tds[j].textContent)) {
      // delete this row
      trs[i].parentNode.removeChild(trs[i]);
      deleted = true;      
      break;
    } else {
      j++;
    }
  }
  
  if (!deleted) {
    i++;
  }
}
<p>The table below should not show any rows containing XXXX100 series courses.</p>
<table id="my-table" cellspacing="0">
  <tr>
    <td>COSC123</td>
    <td>COSC456</td>
    <td>COSC789</td>
  </tr>
  <tr>
    <td>ABCD123</td>
    <td>EFGH124</td>
    <td>IJKL125 <span>span</span></td>
  </tr>
  <tr>
    <td>MNOP233</td>
    <td>QRST294</td>
    <td>UVWX297</td>
  </tr>
  <tr>
    <td>COSC333</td>
    <td>COSC394</td>
    <td>COSC397</td>
  </tr>
  <tr>
    <td>ABCD3000</td>
    <td>ABC3456</td>
    <td>*COSC1997</td>
  </tr>
</table>

要使用Firebug在网站上运行JavaScript代码,您可以将其输入其命令编辑器,然后点击"运行"按钮或按Ctrl/⌘ + Enter

这样,代码将在页面的上下文中执行。