这可能是一个愚蠢的问题,但是当我在输入中使用keyup
时,它会触发AJAX响应。在AJAX成功的范围内,应该更改html类上的某些CSS。我似乎无法使用.closest()
从输入中找到最接近的类。
jQuery:
function check_register_input(input, result, variable) {
$(document).on("keyup", input, function() {
var line = $(this).closest('.bottom-line-active');
var check_variable = $(input).val();
var url = "server/register.php?" + variable + "=" + check_variable;
$.ajax({
type: "GET",
url: url,
success: function(data) {
$(result).html(data);
if ($(data).hasClass('negative_message')) {
$(line).css("background-color", "red");
$(result).removeClass('done');
} else if ($(data).hasClass('positive_message')) {
$(line).css("background-color", "var(--accent_colour_1)");
$(result).removeClass('done').addClass('done');
} else if (data == "") {
$(line).css("background-color", "var(--accent_colour_1)");
$(result).removeClass('done');
}
check_submit_button();
}
});
});
}
HTML:
<label class="labeled">
<input type="text" name="user_login_id" class="inputs" required/>
<span class="float-label">Login ID or email</span>
<div class="bottom-line"></div>
<div class="bottom-line-active"></div>
</label>
有什么建议吗?