Изменить цвет фона CSS с помощью jQuery

0

Привет, у меня есть jQGrid, который содержит такие элементы:

       <td role="gridcell" 
       title=" Hull City AFOdds: 1.74Stake: 27Ret: 46.98Ben: 0.98(Back)" 
       aria-describedby="list2_bet_2">...</td>

Я хотел бы дать этому td собственный стиль с jQuery. Как я могу получить доступ к его CSS?

благодаря

  • 0
    Google "JQuery CSS"
  • 0
    Неужели ваша проблема нацелена на правильный TD или на использование функции jQuery css() ?
Показать ещё 1 комментарий
Теги:
jqgrid

3 ответа

0
Лучший ответ

Если вы знаете, что значение aria-describedby atttribute, заранее, вы можете настроить таргетинг на td:

jQuery("td[aria-describedby='list2_bet_2']")

Итак, чтобы изменить фоновый цвет

jQuery("td[aria-describedby='list2_bet_2']").css('background-color','#f00');
0

Если вы хотите протестировать каждую строку и содержимое этой ячейки, вы можете сделать что-то вроде следующего, которое повторяется по каждой строке и окрашивает ячейку в красный цвет, если обе тестируемые ячейки для этой строки равны 0:

var rowIds = $(grid).jqGrid('getDataIDs');

for (i = 1; i <= rowIds.length; i++) {
    rowData = $(grid).jqGrid('getRowData', i);

    //check on TradeAmount and FoilTradeAmount Cells
    //color background red if both are 0...the user should have to selecte a postive value of either cell
    if (rowData['TradeAmount'] == 0 && rowData['FoilTradeAmount'] == 0) {
        $(grid).jqGrid('setCell', i, 'TradeAmount', "", { 'background-color': '#F08080', 'background-image': 'none', 'font-weight': 'bold' })
        .jqGrid('setCell', i, 'FoilTradeAmount', "", { 'background-color': '#F08080', 'background-image': 'none', 'font-weight': 'bold' });
    } //if
    else {
        $(grid).jqGrid('setCell', i, 'TradeAmount', "", { 'background-color': '#5ccd06', 'background-image': 'none', 'font-weight': 'bold' })
        .jqGrid('setCell', i, 'FoilTradeAmount', "", { 'background-color': '#5ccd06', 'background-image': 'none', 'font-weight': 'bold' });
    }
} //for

Если вы просто хотите стилизовать ячейку в столбце, вы можете сделать что-то вроде

.className td[aria-describedby="GridName_RowName"] {background-color: #F08080;}

а затем часть инициализации вашей сетки вы проверяете каждую строку и добавляете класс, если выполняется какое-либо условие:

        rowattr: function (rd) {//if the row is displaying an inactive user, give it a different CSS style
            if (rd.CellName!= 0) { return { "class": "DeckListMissingAmount" }; } //if

        },
0

Чтобы установить все элементы TD таблицы:

$('td').css('background-color', 'red');

Если вы хотите установить только определенный TD, используйте другой селектор.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню