2009-11-02 4 views

ответ

14

Захват нажатия клавиш, проверьте, если это ввести, а затем искать родительского элемента form и представить его:

$('#textAreaId').keydown(function (e) { 
    var keyCode = e.keyCode || e.which; 

    if (keyCode == 13) { 
    $(this).parents('form').submit(); 
    return false; 
    } 
}); 

Проверьте приведенный выше пример here.

+1

Dang CMS. Ты мужчина. –

1

Добавить функцию onKeyPress в текстовое поле и перехватить Enter (код символа 13) и отправить форму вместо этого.

Here's an example, который использует текстовый ввод вместо textarea, но он должен работать одинаково.

<textarea name="myTextArea" onKeyPress="checkEnter(event)"></textarea> 
1

Основной скелет (от API docs):

$('#textarea-selector-here').keydown(function(event) 
{ 
    switch(event.keyCode) 
    { 
     // ... 
     // different keys do different things 
     // Different browsers provide different codes 
     // see here for details: http://unixpapa.com/js/key.html  
     // ... 
    } 
}); 

Однако, если вы не хотите, чтобы многострочный ввод, то почему бы не просто использовать <input type="text" />?

+1

Конечно, вы имеете в виду тип = "текст" :) –

+0

Yup, извините за опечатку. –

+0

У вас может быть точка TStamper, потому что у меня возникают проблемы с $ (this) .parents ('form'). Submit(); не работает. –

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