Вопрос

мне нужна помощь с этим

я пытаюсь это сделать

if(perc>0){
alert('change backgroundcolor and textcolor');
$('#stocktable tr td:last').addClass('stockhigher');

}

но это не работает на tablecell

Я также попробовал установить такой селектор

$('#stocktable tr td:eq(2)).addClass...
$('#stocktable tr td.percentage').addClass...

ничего!

он работает с самой таблицей или строкой таблицы, например

$('#stocktable tr')

я что-то упускаю здесь?

спасибо, Ричард

Это было полезно?

Решение

На ум приходят три вещи:

  1. Вы используете :last псевдоэлемент.Это будет соответствовать не более одному элементу, в данном случае самой последней ячейке таблицы в «stocktable».Вы, возможно, имеете в виду :last-child вместо?
  2. Вы используете :eq(2) который будет соответствовать третий только элемент во всем наборе.Вы, возможно, имеете в виду :nth-child(2)?
  3. $("#stocktable tr td.eq(2)).addClass... отсутствует и заканчивается цитата;и
  4. В том, что вы делаете, нет ничего плохого.Что именно не работает?Возможно, к ячейке таблицы можно применить не форматирование.

Для дальнейшего объяснения (1) представьте, что у вас есть таблица с 3 строками по 4 ячейки с идентификатором «mytable».Этот код:

$("#mytable td:eq(2)").css("background", "yellow");

раскрасит третий элемент первой строки (:eq() отсчитывается от нуля), тогда как:

$("#mytable td:nth-child(2)").css("background", "yellow");

раскрасит второй ячейка в каждый ряд.

$("#mytable td:last").css("background", "yellow");

окрасит самую последнюю ячейку в самой последней строке, но:

$("#mytable td:last-child").css("background", "yellow");

раскрасит последнюю ячейку в каждый ряд.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top