Изменение bg-цвета при изменении значения jquery

#html #jquery

#HTML #jquery

Вопрос:

Недавно я самостоятельно работал над простой веб-страницей и столкнулся с проблемой.
я хочу изменить значение background-color в определенной ячейке при изменении значения.

  • если значение равно 0 = белый
  • если есть другое значение = синий.

Я думаю, что я не слишком далек от реальности, но это не работает.

 $(document).ready(function(){
    
    $("#table td[id^='changeBgColor']").on('change', function(e) {
        var data = $(this).val();
            if(data === '0'){
                $(this).css('background-color', 'white');
            }else{
                $(this).css('background-color', 'blue');
            }
      });
    
})
 

Это часть таблицы, в которой находится ячейка.

 <tfoot>
    <td colspan="3" style="text-align: center"><strong>TOTAL</strong></td>
    <td id='changeBgColor' colspan="1" style="text-align: center"><strong>..</strong></td>
    <td id='changeBgColor' colspan="1" style="text-align: center"><strong>..</strong></td>
    <td colspan="2" style="text-align: center"><strong></strong></td>
</tfoot>
 

Комментарии:

1. Является ли идентификатор вашей таблицы table ? Я спрашиваю, поскольку вы не показываете здесь полную таблицу…

2. Кроме того, у вас не может быть нескольких элементов с одинаковым идентификатором в HTML, где здесь у вас есть два идентификатора changeBgColor

3.w3schools.com/jquery/…The событие изменения происходит, когда значение элемента было изменено (работает только с элементами <input>, <textarea> и <select>)..

Ответ №1:

 $("td:contains('0')").css('background-color', 'white'); // if the value is 0 white, else blue