2012-02-17 5 views
1

Я пытаюсь имитировать пользователя, нажимающего клавишу ввода, когда они покидают поле ввода (.blur). Так что в основном, при размытии, он имитирует то, что пользователь на самом деле нажал клавишу ENTER на своей клавиатуре ... Любые идеи о том, как это сделать?Имитация Нажатие клавиши ввода с помощью jQuery

+2

Какова цель? Вы просто пытаетесь добавить новую строку для ввода текста? –

+1

Зачем вводить ключ, какое действие это сделает? Я бы предложил просто сделать это. –

+0

Причина в том, что у меня есть поле, которое позволяет пользователям вводить «теги», но иногда они не понимают, что им нужно нажать Enter или Tab после добавления тега ... они просто выходят за поле и не создают тег .. – user1093150

ответ

0

Почему бы вам не просто вызвать любое действие, которое будет выполнять клавиша ввода, например $(this).closest('form')[0].submit();, чтобы отправить форму, содержащую это поле.

+0

Зачем вам нужно '[0]'? '.closest' должен возвращать только один элемент. –

+0

Возможно, у него нет формы и делает это с помощью запроса ajax, который затем переходит к возвращенному URL-адресу. Мы мало знаем о том, как выглядит его код. – jnoreiga

+1

Функция jQuery '.submit()' на самом деле не представляет форму - по крайней мере, это было так; поэтому я вызываю собственный метод DOM. – ThiefMaster

6
$("input").blur(function() { 
    var e = jQuery.Event("keydown"); 
    e.which = 13; // Enter 
    $("input").trigger(e); 
}); 

Demo

+0

Нет, я определенно хочу, чтобы это произошло при размытии. Я хочу, чтобы он «как будто» пользователь нажал кнопку ввода, как только они покинули поле ввода – user1093150

+0

Ну, я обновил его для вас – jnoreiga

2

Основываясь на ваш комментарий

Причина заключается в том, что у меня есть поле, которое позволяет пользователям вводить «метки», но иногда они не понимают, что они должны ударить Enter или Tab после , добавив тег ... они просто нажмите поле и не создают тег ..

Try,

$("input").blur(/* Fx that adds the Tag*/); 

Примечание: Вы, возможно, потребуется пересмотреть KeyDown обработчик событий для вкладки, потому что .blur будет срабатывать, когда вы вкладку хит.

Смежные вопросы