2016-05-22 80 views
0

我正在用grepmonkey腳本超出我的深度。我正在處理一個html表格,第二列中有月份數據,例如'四月',或'五月'。下面是我處理的HTML的一個簡化版本:使用Greasemonkey根據其內容更改html表單元格格式

<html> 
    <body> 
     <form> 
      <table class="gridtable"> 
       <tbody> 
        <tr class="header"></tr> 
        <tr> 
         <td>blah</td> 
         <td>April</td> 
         <td>blah</td> 
        </tr> 
        <tr> 
         <td>blah</td> 
         <td>May</td> 
         <td>blah</td> 
        </tr> 
       </tbody> 
      </table> 
     </form> 
    </body> 
</html> 

對於將第2列/ TD包含了「五一」的所有行,我想用的Greasemonkey改變這種細胞,例如的格式大膽的紅色文字,背景爲黃色。這裏是我到目前爲止的代碼,但它不會有任何影響,我不知道這是否是一個很好的起點(我只包括背景顏色現在,跑在前面走):

var thetds = document.getElementsByTagName('td'); 
for (var j = 0; j < thetds.length; j++) { 
if (thetds[j].innerHTML == "May") 
    thetds[j].style.backgroundColor = rgb(250, 220, 0); 
} 

有效地我希望TD從轉:

<td>May</td> 

到:

<td style="background-color: rgb(250, 220, 0); color: rgb(255, 0, 0); font-weight: bold;">May</td> 

任何意見,不勝感激!謝謝。 PS我發現this類似的問題,但我無法對我的情況進行調整,這是完全不同的。

回答

1

rgb(250, 220, 0)應該"rgb(250, 220, 0)"

thetds[j].style.backgroundColor = "rgb(250, 220, 0)"; 

example

+0

啊謝謝了修復,併爲演示,很高興看到我比我想象的更近,雖然......這還不是通過Greasemonkey工作...位丟失。 – David

+0

@David我測試過,它的工作原理。這裏有一個例子greasemonkey腳本http://pastebin.com/7bvvYwXJ。安裝它並訪問這個頁面https://fiddle.jshell.net/wsqq7wfz/3/show/light/ –

+0

由於幾個原因可能不適用於OP的頁面:(1)AJAX,(2)空格('.innerHTML =='在實際頁面上幾乎總是很脆弱),(3)OP的表格單元搜索可能會產生誤報 - 一旦其他問題被排序(不檢查結構)。 –

相關問題