JQuery, отправить форму, когда поле теряет фокус - PullRequest
4 голосов
/ 07 декабря 2009

Как я могу отправить форму, когда поле (в этом случае форма имеет только одно поле) теряет фокус?

Я пробовал это, но это не работает:

$("form").submit();

UPDATE

Я забыл упомянуть, что форма была создана и с помощью jquery:

$("div").html('<form action="javascript:void(0)" style="display:inline;"><input type="text" value="' + oldValue + '"></form>');

Вероятно, поэтому оно не будет отправлено, я думаю, это потому, что события не наблюдаются.

Ответы [ 3 ]

8 голосов
/ 07 декабря 2009
$('form :input').blur(function() {
    $(this).closest('form').submit();
});
4 голосов
/ 07 декабря 2009

Инициирует событие submit () формы, когда поле теряет фокус. Вы можете обнаружить это, подключив к нему обработчик события blur().

$("#field").blur(function() {
  $("#form").submit();
});

Если в вашем поле нет идентификатора или другого средства, позволяющего легко его идентифицировать (что я бы порекомендовал), вы также можете сделать что-то вроде этого:

$("#form :input").blur(function() {
  $("#form").submit();
});

, так как есть только одно поле.

1 голос
/ 07 декабря 2009

Как насчет этого

var $yourForm = $('#form');

$yourForm.find('input').eq(0).blur(function() {

    $yourForm.submit();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...