Отключить клавиатуру в теге HTML SELECT - PullRequest
4 голосов
/ 04 августа 2009

Я хочу отключить клавиатуру для тега HTML SELECT, чтобы пользователь мог использовать только мышь для выбора параметров.

Я пытался event.cancelBubble=true на onkeydown, onkeyup и onkeypress событиях без удачи.

Есть идеи?

Ответы [ 3 ]

2 голосов
/ 04 августа 2009

Кто-то оставил мне правильный ответ, а затем почему-то удалил его, поэтому вот он:

function IgnoreAlpha(e) {
  if (!e) {
    e = window.event;
  }
  if (e.keyCode >= 65 && e.keyCode <= 90) // A to Z
  {
    e.returnValue = false;
    e.cancel = true;
  }
}
<p>
  <select id="MySelect" name="MySelect" onkeydown="IgnoreAlpha(event);">
    <option selected="selected " value=" " />
    <option value="A ">A</option>
    <option value="B ">B</option>
    <option value="C ">C</option>
  </select>
</p>
2 голосов
/ 04 августа 2009

Кросс-браузерным способом, предполагая, что объект события был правильно инициализирован:

function disableKey(e)
{
   var ev = e ? e : window.event;

   if(ev)
   {
       if(ev.preventDefault)
          ev.preventDefault();
       else
         ev.returnValue = false;         
   }    
}
0 голосов
/ 04 августа 2009
event.preventDefault()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...