我试图获取输入字段(按类关联),以便在有内容时更改颜色。
这是有效的,但删除课程并没有正确激活,我不确定原因。如果我将内容输入第一个,然后第二个输入,删除第一个内容,该类将被删除,但是如果我从第一个之前删除第二个内容,则背景保持蓝色。
我无法使用文本框ID,因为它们已在使用中。
JS代码:
$('.checkFiller').on('change', function () {
if ($('.checkFiller').length > 0) {
$(this).addClass('allFiller');
}
if ($('.checkFiller').val() == '' || $('.checkFiller').val() == 0 || $('.checkFiller').val() == null) {
$(this).removeClass('allFiller');
}
});
这是一个演绎我的挫败感的方法 - 我做错了什么?
答案 0 :(得分:3)
您需要使用this
让正在编辑的人使用.hasClass()
和.length
来实现此目的
$('.checkFiller').on('change', function () {
if($(this).val().length==0){
$(this).removeClass('allFiller');
}else $(this).addClass('allFiller');
});
.allFiller {
background-color: #333366;
color: #ffffff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="checkFiller">
<input class="checkFiller">
<input class="checkFiller">
答案 1 :(得分:0)
您应该在on:
中将引用从ID Bike_and_Cars Cars_and_Bike
Be_01 12 20
Ce_02 6 7
更改为$('.checkFiller')
$(this)
按原样,您正在使用类检查第一个输入,而不是已更改的输入。