我有一个列表,列表由一些输入字段组成,一个是文本,另一个是复选框。选中该复选框后,我希望JQuery获取前一个输入字段并将字体颜色更改为红色。
Jquery有办法做到这一点吗?
newListItem = '<li><span class="handle"> :: <input class="listItem" style="color:#1C94C4;" value="' + theValue + '"><input class="addTodaysItem" type="checkbox" style="width:20px;"></span><a class="removeListItem" style="display: none;" href="#"> X </a> </li>';
var $thisEntry = $(this).find('input:previous');
if(this.checked){
$thisEntry.css('color', 'red');
}
else {
$thisEntry.css('color', '#1C94C4');
}
答案 0 :(得分:2)
替换:
var $thisEntry = $(this).find('input:previous');
with:
var $thisEntry = $(this).prev('input');
因为没有:previous
伪选择器,并假设实际上有一个范围,this
就是您认为的。