我有一个文本框
<input type="text" name="txt1" id="txt1" class="comment">
已经添加了一类&#39; .error&#39;选择某个下拉选项时:
.error {
color:red;
}
但我现在正试图删除&#39; .error&#39;当用户开始在文本框中键入时类,类似于:
if ($('.comment').val().length > 0) {
removeClass('.error');
}
答案 0 :(得分:2)
除了一些小的语法错误之外,主要问题是 时你想要调用这些代码。要检查每次击键,请使用keyup()
。如果您检查value
上的removeClass()
和this
(其中键入了密钥的具体元素),您可以拥有多个.comment
字段同样的行为。
$('.comment').keyup(
function() {
if (this.value.length > 0) {
$(this).removeClass('error');
}
}
)
&#13;
.error {
background-color: red; // changed for easier demo visibility
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" name="txt1" id="txt1" class="comment error">
<input type="text" name="txt2" id="txt2" class="comment error">
&#13;
答案 1 :(得分:1)
试
$('.comment').removeClass('error');