Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Нажатие Enter в input полях / 16 сообщений из 16, страница 1 из 1
05.02.2013, 18:52
    #38138719
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Не знаю точно, что спрашивать, поэтому объясняю всю ситуацию:
1. При нажатии пользователем клавиши Enter в input поле почему то срабатывает нажатие на самую верхную кнопку в форме. Почему так происходит, я не понимаю. Фокус поидее находится в input поле, action не прописан.

2. Решил бороться следующим образом: Разместил выше всех кнопок на форме свою "блокирующую" невидимую кнопку. Вроде помогло, но перестали работать страницы, на которых событие нажатия Enter отлавливалось скриптом. Скрипт нажимал на некую кнопку вход с id='entryButton'
Код: html
1.
2.
3.
4.
5.
6.
7.
<script type="text/javascript">
     function key(event) {return ('which' in event) ? event.which : event.keyCode;}
</script>

<input onkeyup="if(key(event)==13){document.getElementById('entryButton').click();}"/>

<button id="entryButton" onclick="alert('Нажата кнопка entryButton');"/>



3. С пуктом 2 решил борться следующим образом:
На блокирующую кнопку повесил скрипт на onclick
Код: javascript
1.
2.
3.
4.
var elem = document.getElementById('entryButton');
if(elem){
    elem.click();
}



Не работает, т.е. копка entryButton не нажимается.

А вот так работает:
Код: javascript
1.
2.
3.
4.
5.
alert('');
var elem = document.getElementById('entryButton');
if(elem){
    elem.click();
}


Т.е если перед работой скрипта выпадает alert, кнопка нажимается. Видимо нужно какое то прерывание между этими двумя нажатиями...

Кто-нибудь может помочь хотя бы по одному из этих пунктов?
...
Рейтинг: 0 / 0
05.02.2013, 19:10
    #38138765
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
...
Рейтинг: 0 / 0
05.02.2013, 19:20
    #38138788
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Паганель http://www.sql.ru/forum/afsearch.aspx?s=input%2BEnter&submit=%CD%E0%E9%F2%E8&bid=61
Я понимаю как по Энтеру нажимать на кнопку, я не понимаю почему она нажимается, когда это не реализовано.
...
Рейтинг: 0 / 0
05.02.2013, 19:33
    #38138805
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Rebeledя не понимаю почему она нажимается, когда это не реализовано.а у меня не нажимается: http://jsfiddle.net/SHdfd/
Хотя тоже не реализовано
Что я делаю не так?
...
Рейтинг: 0 / 0
05.02.2013, 19:39
    #38138812
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Паганельа у меня не нажимается: http://jsfiddle.net/SHdfd/
Хотя тоже не реализовано
Что я делаю не так?
У меня на тестовой html страничке тоже. Ну значит надо в эту сторону и копать.
Если есть идеи по поводу того почему наживается первай кнопка в форме буду благодарен.
Проект на JSF, компоненты primefaces.
...
Рейтинг: 0 / 0
05.02.2013, 19:40
    #38138813
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Можете выложить проект на какой-то бесплатный хостинг и дать сюда ссылку?
...
Рейтинг: 0 / 0
06.02.2013, 08:11
    #38139301
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Нет, к сожалению не могу. Нет прав.
primefasec видимо тоже не причём. Виновато что то в js окружении.
Есть ли возможность через firebug или ещё что то проследить стэк вызовов? Т.е. узнать откуда вызывается onclick кнопки? Ну или что-то типа того?
...
Рейтинг: 0 / 0
06.02.2013, 11:23
    #38139578
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
firebug -> закладка Script -> правая панель -> закладка Stack
...
Рейтинг: 0 / 0
06.02.2013, 11:42
    #38139609
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
http://clip2net.com/s/2NzOv
Нет ничего. Как я понимаю, говорит что пользователь кликнул. А пользователь Enter нажал. Выходит что то преопределено в структуре window?
...
Рейтинг: 0 / 0
06.02.2013, 15:01
    #38140119
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Всё таки шайтан имеет место быть
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
<html><head>
        </head>
        <body>
            <form>
                <button value="OK" onclick="alert('Нажата кнопка');">ОК</button>
                <input>
            </form>
        
</body></html>


По нажатию на input выводится alert в Firefox 18.0.2 и Chrome 24.0.1312.57 m
В IE 9.0.8112.16421 не нажимается.
В этом эмуляторе так же http://jsfiddle.net/SHdfd/
http://clip2net.com/s/2NCwb
У вас не нажималась, потому что не было формы. У меня тогда на тестовой страничке, потмоу что была синтаксичкская ошибка в скрипте.
...
Рейтинг: 0 / 0
07.02.2013, 00:42
    #38140950
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Кажись это производители браузеров о чем-то между собой сговорились, а нам не сказали
По крайней мере, я ничего про срабатывание button (при нажатии Enter в соседнем инпуте) в доках найти не смог
Хотя... может, плохо искал...
...
Рейтинг: 0 / 0
07.02.2013, 01:23
    #38140971
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Где-то чего-то проскакивало такое ... что сработает при определенных названиях (?) кнопки и т.д.
А если заменить <button></button> на <input type="button"/>?
...
Рейтинг: 0 / 0
07.02.2013, 04:12
    #38141004
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
При нажатии на Enter в поле ввода, происходит submit формы. Кнопка <button> по умолчанию имеет тип submit. Почему она автоматом кликается при сабмите формы - не знаю, наверное какое-то стандартное поведение.
...
Рейтинг: 0 / 0
07.02.2013, 11:00
    #38141255
Rebeled
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Паганельсрабатывание button (при нажатии Enter в соседнем инпуте)
IDVsbruckГде-то чего-то проскакивало такое ... что сработает при определенных названиях (?) кнопки и т.д.
Инпут не обязательно соседний, название любое. Аналогичное поведение наблюдается на всевозможных довольно сложных формах
IDVsbruckА если заменить <button></button> на <input type="button"/>?
Не сработает, потому что <input type="button"/> работает примерно так же как <button type="button"/>
...
Рейтинг: 0 / 0
07.02.2013, 11:49
    #38141381
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
st_stКнопка <button> по умолчанию имеет тип submitблин вечно я про это забываю, надо на бумажке написать и к монитору прицепить :)
...
Рейтинг: 0 / 0
07.02.2013, 13:02
    #38141572
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нажатие Enter в input полях
Паганельблин вечно я про это забываю, надо на бумажке написать и к монитору прицепить :)

Сам забываю постоянно, да и постаринке к input type="button/submit" привык как-то, тут неошибёшься :)
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Нажатие Enter в input полях / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]