Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > перехватить нажатие на Enter


Автор: VKoresh 19.5.2008, 12:12
Здравствуйте, господа!
Столкнулся с проблемкой - надо сделать чтоб submit происходил именно по клику на кнопку, а не по нажатию на enter..

Я так понимаю что надо копать в сторону событий onkeypress, onkeydown, onkeyup. Попробовал. Не помогло.

Код

<html>
<body>

<form name="input" action="form_action.asp" method="get">
Male:
<input type="radio" name="Sex" value="Male" checked="checked" />
<br />
Female: 
<input type="radio" name="Sex" value="Female" />
<br />
<input type ="submit" value ="Submit" onkeypress="" />
</form> 

</body>
</html>


Скажите можно ли это как-ть обойти?
Покопался по форуму, но нашел только прямо противоположное... http://forum.vingrad.ru/topic-88555.html

Автор: VKoresh 19.5.2008, 12:34
Всем спасибо!
Если кому интересно то решение нашел вот http://www.intuit.ru/department/internet/js/3/3.html. Пришлось малость поковырять JavaScript.
Код


<html>
<body>

<form name="input" action="form_action.asp" method="get" onkeypress="return false;" >
Male:
<input type="radio" name="Sex" value="Male" checked="checked" />
<br />
Female: 
<input type="radio" name="Sex" value="Female" />
<br />
<input type ="submit" value ="Submit" />
</form> 

</body>
</html>



А я парился smile

вот только это подходит для форм где не надо ничего вводить... в смыле текст.. ибо он ВОБЩЕ не реагирует...

Добавлено через 9 минут и 37 секунд
Мдя.. ну что ж.. снова в поиск ибо такой вариант не подходитsmile

Автор: VKoresh 19.5.2008, 14:00
пришлось наваять небольшой скриптик
Код

function suppressEnter(e)
{ 
  if (e.keyCode == 13)
    return false;   
}

и тогда 
Код

onkeypress="return false;"

заменить на 
Код

onkeypress="return suppressEnter(event);"

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)