为什么要聚焦(); jQuery在聚焦一个字段后不执行某个功能?

时间:2010-03-03 11:35:42

标签: jquery events focus

我试图在jQuery中使用focusout(http://api.jquery.com/focusout/)函数,在用户将注意力从输入表单字段上移开后执行一个函数,但它不起作用。

这是我的代码:

$("#employee_id").focusout(function(){
  var employeeId = $("#employee_id").val();
  if(employeeId == '') {
    $("#employee_id").after('<div class="error">Your employee id number is required.</div>');
    hasError = true;
  }
});

我正在使用jquery-1.3.2.min.js,因为当我尝试使用jquery-1.4.2.min.js时,我正在使用的另一个插件(qtip)给了我一个错误。

如何让焦点事件发挥作用,还是有另一种方法可以完成我想要完成的任务?

1 个答案:

答案 0 :(得分:9)

由于您似乎只关心该字段而不关注父/冒泡,请使用.blur()

$("#employee_id").blur(function(){
  if($(this).val() == '') {
    $(this).after('<div class="error">Your employee id number is required.</div>');
    hasError = true;
  }
});