給區域一個靜態ID。 把這些樣式規則的地方,例如頁面標題:
<style>
.annual{
background-color:yellow;
}
.ex{
background-color:grey;
}
.trainingcourse{
background-color:peach;
}
</style>
運行這個JavaScript,但對你的報告的靜態ID替換STATICID。根據需要添加案例和類。這裏的優點是你從CSS中引導而不是使用jquery。如果你喜歡,你可以直接指定背景顏色,但我自己的偏好是保持這種分離。
$("#report_STATICID td[headers]").each(function(){
var lTest = $(this).text(), lClass;
switch(lTest){
case 'AL':
lClass = "annual";
break;
case 'X':
lClass = "ex";
break;
case 'C':
lClass = "trainingcourse";
break;
};
if(lClass){
$(this).addClass(lClass);
};
})
編輯:可以從評論是顯而易見的,您使用的主題,因此模板的區域是在這些問題非常重要。
(注意:在下面的示例中,我使用了一個簡單的經典報表,基於帶有靜態id empreport的emp表上的select)
在這種情況下@Robovisits使用的是主題13 - 經典藍。首先要檢查的是標記:
這使您可以確定選擇器是否正確,並將目標正確的元素。驗證這一點的最好方法是通過在瀏覽器的開發人員工具中從控制檯運行選擇器並檢查返回值。
現在,當我運行此代碼:
$("#report_empreport td[headers]").each(function(){
var lTest = $(this).text(), lClass;
switch(lTest){
case 'KING':
lClass = "class1";
break;
case 'PICARD':
lClass = "class2";
break;
case 'FRANCINE':
lClass = "class3";
break;
};
if(lClass){
$(this).addClass(lClass);
};
})
我然後右擊一個專欄中,我認爲應該受此影響,並選擇檢查元素(在這種情況下,我在Chrome的開發工具是)。
不錯,所以我在KING中的小區確實收到了正確的課。現在它爲什麼不着色?
因爲我想用CSS着色,我需要選擇在html窗格中受影響的元素,然後我可以在CSS面板中查詢到正確的:
正如你所看到的,類class1的CSS正在重寫!這裏發生的是另一個更具體的規則優先於我們的規則。坦率地說,選擇器越具體,其應用規則的優先級越高。 這可以通過給我選擇更多的「體重」來解決。
body table.t13Standard td.class1{
background-color:yellow;
}
!注:也有使用選項重要只需覆蓋任何東西,不管特異性。我通常會避免這種情況,除非它確實有意義。它看起來是這樣的:
.class1{
background-color:yellow !important;
}
來源
2013-07-23 14:43:24
Tom
所以這是一個典型的報告,但沒有表格的形式? (從截圖判斷) – Tom
這是正確的@Tom – RoboVisits