7

ajaxを使用してユーザーにログインする基本的なログインフォームがあります。詳細が正しくない場合は、ログインに失敗したことを示すテキストが表示されます。これが最後のテキストボックスに表示されると、ユーザーがテキストを入力するとフォーカスが失われます。

送信/Enterキーを押す前に、ユーザーが最後に表示していたテキストボックスにフォーカスを設定することはできますか?

$('#login').click(function (e) 
 { 
  e.preventDefault();
  $.ajax({
  type: "POST",
  dataType: "text",
  url: "login.php",
  data: "username=" + $("#username").val() + "&password=" + $("#password").val(),
  cache: false,
  success: function(reply)
  {
   if (reply.indexOf("Success") >= 0)
   {
    location.reload();
   }
   else
   {
    $("#loginResult").html("Login Failed");
    //set focus here       
   }
  }
 }); 

どんな提案でも、ありがとう。

4

1 に答える 1

8

すべての入力をフォーカスアウトイベントにサブスクライブします

$('.input').focusout(function () {
   $('#myform').data('lastSelected', $(this));
});
于 2011-01-16T19:19:00.050 に答える