#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