Javascript 解析html表并更改每个“i”值颜色

Javascript 解析html表并更改每个“i”值颜色,javascript,php,html,parsing,Javascript,Php,Html,Parsing,好的,我有一个由havij生成的表,在几天的时间里,我一直把它放在一个HTML文件中 Havij把它的行涂成这样 LIGHTORANGE WHITE LIGHTORANGE WHITE 在我把桌子放在一起之后,我得到了一个被破坏的图案 LIGHTORANGE LIGHTORANGE WHITE LIGHTORANGE etc... 我希望扫描这个html文件并重新分配patternfix,以便于查看 以下是使用类似形式的示例: 正如你所看到的,乔是橙色的,当他和他下面的每个人都应该换颜色的

好的,我有一个由havij生成的表,在几天的时间里,我一直把它放在一个HTML文件中

Havij把它的行涂成这样

LIGHTORANGE
WHITE
LIGHTORANGE
WHITE
在我把桌子放在一起之后,我得到了一个被破坏的图案

LIGHTORANGE
LIGHTORANGE
WHITE
LIGHTORANGE
etc...
我希望扫描这个html文件并重新分配patternfix,以便于查看

以下是使用类似形式的示例:

正如你所看到的,乔是橙色的,当他和他下面的每个人都应该换颜色的时候

这样做的最佳方式是什么?我不想把它作为.exe来执行。也许一个好的解决方案是用php实现

这是我的伪代码:

1. Read the file and be ready to parse it

2. Loop to like 1000, each of the i values from that loop will search for the value last matched in a <td>

3. Per i, change the color in the td attribute of even numbers to orange

4. Output code as a .html file or whatever.
有人能想出一个有效的代码吗?有没有其他建议可以让这更快/更容易

最后,我无法手动更改它,因为我当前有20000行


编辑:Javascript解决方案实际上会更好

您可以使用以下方法从TDs中删除硬编码属性:

window.onload = function() {
    var tds = document.querySelectorAll('table tr:not(:first-child) td');
    for (var i = 0; i < tds.length; i++) {
        tds[i].bgColor = null;
    }
}
然后您可以使用CSS自动分配颜色


选择器的:not:第一个子部分跳过标题行。如果您也要删除它们的属性,并使用CSS执行此操作,您可以将其删除。

您可以向我们提供更多关于被破坏的模式和您想要的模式的信息吗?比如什么?这就是使用CSS选择器的全部功能:第n个子项,它应该可以正常工作,不需要对每个单元格的颜色进行硬编码。您能给出一个工作示例吗?更简单的解决方案?您可以使用CSS伪选择器tr:n类型偶数{background:DC883D;}我认为最好的解决办法就是简单地用记事本++的“全部替换”。无论如何,我会选择你的答案是正确的:不敢相信我之前没有考虑过它…:P