отправка формы от textarea - PullRequest
       29

отправка формы от textarea

0 голосов
/ 21 декабря 2009

как я могу отправить форму при нажатой клавише ввода, когда я набираю текстовое поле ........ если я нажму клавишу ввода, она только разрывает строку, но не отправляет форму.

Ответы [ 3 ]

5 голосов
/ 21 декабря 2009

Попробуйте <textarea onkeypress="handleKeyEvent(event);">

function handleKeyEvent(e) {
    var charCode;

    if (e && e.which) {
        charCode = e.which;
    } else if (window.event) {
        e = window.event;
        charCode = e.keyCode;
    }

    if (charCode == 13) {
        document.getElementById("yourForm").submit();
    }
}

Но я бы посоветовал против такой вещи или, по крайней мере, чтобы пользователи знали, что произойдет, когда они нажмут ввод. Как правило, они ожидают разрыв строки.

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

Вам нужно будет использовать JavaScript. Грубо говоря:

В качестве альтернативы используйте <input type="text"> вместо <textarea>.

0 голосов
/ 21 декабря 2009

С http://jennifermadden.com/javascript/stringEnterKeyDetector.html

Используйте функцию JavaScript:

function checkEnter(e) {
  //if which property of event object is supported (NN4)
  if(e && e.which) {
    //character code is contained in NN4's which property
    characterCode = e.which;
  }
  else {
    e = event;
    //character code is contained in IE's keyCode property
    characterCode = e.keyCode;
  }

  //if generated character code is equal to ascii 13 (if enter key)
  if(characterCode == 13) {
    //submit the form
    document.forms[0].submit();
    return false;
  }
  else {
    return true;
  }  
}

А затем используйте следующую текстовую область:

<textarea onKeyPress="checkEnter(event)"> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...