2012-05-30 5 views
0

Приветствую вас, я хочу изменить цвет фона каждого <tr> Я пытаюсь сделать то же самое, не получая результат. Я знаю, что в моем коде есть какая-то проблема. Пожалуйста, помогите мнеИзменение цвета строки таблицы

Ниже мой код проверки онлайн DEMO

SCRIPT

var b = new Array('col_one','col_two','col_three'); 

$('#tbl tr').each(function(){ 

var a = 0; 

$('#tbl tr').addClass(b[a]) 

a++; 


}) 

CSS

.col_one 
{ 
    background:#000099; 
} 
.col_two 
{ 
    background:#009966; 
} 
.col_three 
{ 
    background:#663333; 
} 

HTML

<table width="100%" border="1" cellspacing="0" cellpadding="0" id="tbl"> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
</table> 

ответ

1

Сейчас он работает.

http://jsfiddle.net/QnVdE/3/

+0

привет @MajoB спасибо за помощь. im пытается вставить ваш cpde на мою веб-страницу, но не дает тот же результат plz проверить мой код и рассказать мне, в чем проблема в моем коде здесь онлайн-демонстрационная ссылка http://jsfiddle.net/QnVdE/7/ ... .. извините за просьба более – Kamal

+1

@Kamal мой код не работает? : o Я сделал некоторое редактирование только сейчас –

+0

спасибо @SiGanteng за вашу помощь – Kamal

3

Это потому, что вы объявляете a быть 0 на каждой итерации, вы можете передать переменную в функцию Анон от each получить индекс элементов итерируемая:

$('#tbl tr').each(function(idx){ 

    // $(this) refers to the jQuery object of each tr 
    $(this).addClass(b[idx%3]); // re-use colors when idx > 3 
}) 

http://jsfiddle.net/QnVdE/2/

+0

спасибо за помощь, но я хочу, чтобы применить CSS на '' постоянно кода только применяющей на первом 3 '' – Kamal

+0

@Kamal Я сделал правку, вы видите, что? часть с 'idx% 3' –

+0

@Kamal http://jsfiddle.net/QnVdE/2/ –

0
var b = new Array('col_one','col_two','col_three'); 
var a = 0; 
$('#tbl tr').each(function(){ 
if(a > 2){a=0;} 
$(this).addClass(b[a]); 

a++; 


}) 
+1

не работает http://jsfiddle.net/QnVdE/4/ –

0
var b = ['col_one','col_two','col_three']; 
var a = 0; 
$('#tbl tr').each(function(){ 
    $(this).addClass(b[a % b.length]); 
    a++; 
}); 
Смежные вопросы