Прекращение отправки ключа ввода также прекращает ввод ключа в многострочном текстовом редактировании - PullRequest
1 голос
/ 19 июля 2011

В Интернете существует множество решений, запрещающих вводу ключа ввода. Чаще всего использовать <body onkeypress = ...

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

Спасибо

AJ

Ответы [ 2 ]

3 голосов
/ 19 июля 2011
<script language="Javascript">
    document.onkeydown = function() {
        if (event.keyCode == 13) {
            if (document.activeElement.tagName.toLowerCase () != "textarea") {
                      event.preventDefault();
                      return false;
                }
        }
    }
</script>

Как-то так?

1 голос
/ 19 июля 2011

Вы можете попробовать следующее (с помощью jquery):

$(function(){
$('input:not(textarea)').live('keypress', function(e) {
        if (e.which == 13) return false;
        if (e.which == 13) e.preventDefault();
    });
});

Ориентированы только поля ввода, но не текстовые.

NON JQUERY

 function disableEnterKey(e)
     {
          var key;      
          if(window.event)
               key = window.event.keyCode;
          else
               key = e.which;     

          return (key != 13);
     }

И добавитьonKeyPress на всех текстовых вводах

<input type="text" name="textIn" onKeyPress="return disableEnterKey(event)"/>

Ссылка: http://www.bloggingdeveloper.com/post/Disable-Form-Submit-on-Enter-Key-Press.aspx

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