jquery失去焦点
jQuery 失去焦点事件处理
在 jQuery 中,失去焦点事件可以通过 blur() 方法或 on() 方法绑定。以下是具体的实现方式:
使用 blur() 方法绑定事件
$("#inputField").blur(function() {
console.log("输入框失去焦点");
});
使用 on() 方法绑定事件
$("#inputField").on("blur", function() {
console.log("输入框失去焦点");
});
动态元素的事件委托
如果元素是动态生成的,可以使用事件委托方式绑定 blur 事件:
$(document).on("blur", "#dynamicInput", function() {
console.log("动态生成的输入框失去焦点");
});
失去焦点时验证输入
以下是一个表单输入框失去焦点时验证输入内容的示例:
$("#emailInput").blur(function() {
var email = $(this).val();
if (!isValidEmail(email)) {
$(this).addClass("error");
$("#emailError").text("请输入有效的邮箱地址");
} else {
$(this).removeClass("error");
$("#emailError").text("");
}
});
function isValidEmail(email) {
var re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return re.test(email);
}
多个输入框的批量处理
可以通过类选择器为多个输入框绑定失去焦点事件:
$(".form-control").blur(function() {
if ($(this).val() === "") {
$(this).addClass("empty");
} else {
$(this).removeClass("empty");
}
});
阻止表单提交时的焦点丢失
在某些情况下,可能需要阻止表单提交时触发的 blur 事件:

$("#submitBtn").click(function(e) {
e.preventDefault();
// 提交逻辑
});
这些方法涵盖了 jQuery 中处理失去焦点事件的主要场景,包括基本绑定、动态元素处理、表单验证和批量操作等。






