上下文:我正在尝试从搜索引擎的表格提供的列表中选择一门大学类(class)。搜索引擎只识别有前缀的后缀,即 COSC3 或 COSC350。 3 或 350 不会返回任何结果。
我想知道的是,是否可以使用 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>
关于javascript - 我可以使用 Firebug 控制台在本地删除网站上的表格单元格吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30824366/