Определить местоположение курсора - PullRequest
0 голосов
/ 28 октября 2009

У меня есть 25 компонентов, которые включают [textarea, textfile, radio, combo и т. Д.], И я написал ключевое событие, так что при вводе «ENTER» я вызываю функцию, которая отправит страницу. 1001 *

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

Это происходит только в IE7 и IE8; он работает правильно во всех других браузерах.

Ответы [ 4 ]

0 голосов
/ 28 октября 2009

Я не уверен, что это подойдет вам, но вы можете отключить клавишу ввода внутри текстовой области следующим образом:

$(document).ready(function(){
 $('textarea').keypress(function(e){
  var key = (window.event) ? e.keyCode : e.which;
  if ( key == 13 ) {
   return false;
  } else {
   return true;
  }
 })
})
0 голосов
/ 28 октября 2009

Вы прикрепили «ключевое событие» ко всей форме? Весь ДОМ? если ты это сделал, то это нормальное поведение.

Если вы хотите, чтобы «Ключ ввода» отправлял страницу, когда фокус находится на кнопке отправки, примените эту функцию в событии onsubmit - там, конечно, вы можете выполнить все необходимые проверки. Если вы просто хотите исключить событие ввода клавиши из текстовой области - выполните простую проверку, находится ли фокус в текстовой области, которая имеет место.

0 голосов
/ 28 октября 2009

Поведение формы по умолчанию - отправка, если пользователь нажимает клавишу ввода внутри формы, если только фокус не находится на текстовой области, поэтому вам нужно поведение по умолчанию. Удалите любой код, который в данный момент обрабатывает нажатия клавиш для формы, и вы получите то, что хотите.

0 голосов
/ 28 октября 2009

вы, вероятно, могли бы обнаружить, если какая-либо из текстовых областей и т. Д. Не заполнена / emtpy / unset. если все они заполнены правильно, отправьте форму.

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