Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не получаеться засабмитить FORM, Form + Enter не работают 
V
    Опции темы
KOp4iK
Дата 13.12.2007, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Доброго всем времени суток!
Есть код:
Код

<html>
<head>
    <meta http-equiv=Content-Type content="text/html; charset=UTF-8" />
    <title>Form test</title>
</head>
<body>
    <form name="viewList" method="get" action="testformresult.html">
        <table>
            <tr>
                <td width="30%">Логин:</td>
                <td>
                    <input type="text" name="userName" maxlength="9" value="">
                </td>
            </tr>
            <tr>
                <td width="30%">Ник:</td>
                <td>
                    <!--<input type="text" name="nick" maxlength="9" value="">-->
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

Если сейчас ввести любую инфу в поле и нажать Enter, то сабмит произойдёт, если же разкомментировать строчку
Код

<!--<input type="text" name="nick" maxlength="9" value="">-->

, то сколько Enter не нажимай ничего не работает...
 smile  Плз хелп - совсем замучался  smile 
PM MAIL   Вверх
KOp4iK
Дата 14.12.2007, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Ну чтож, а теперь послушаем правильный ответ.  smile 
У меня получился вот такой вот workarround:
Код

<script language="JavaScript">
    function submitViaEnter(evt)
    {
        evt = (evt) ? evt : event;
        var target = (evt.target) ? evt.target : evt.srcElement;
        var form = target.form;
        var charCode = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode);
        if (charCode == 13)
        {
            form.submit();
            return false;
        }
        return true;
    }
</script>

All greetings goes to: Д. Гудман "JavaScript и DHTML Сборник рецептов" для профессионалов. Питер 2004.

Ну и добавление на каждое поле типа:
Код

<input type="text" name="nick" maxlength="9" value="" onkeypress="return submitViaEnter(event)">


Мож у кого какие замечания? Так всегда WELCOME! smile 
PM MAIL   Вверх
szz
Дата 24.12.2007, 05:35 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: нет
Всего: 33



Есть одно замечание.
Нездоровый workaround. И сама проблема нездоровая... 
должно работать и так!
Но действительно не работает.

Но я нашел другой, более здоровый wo - добавить спрятанную субмит-кнопку:
Код
<input type=submit style="display:none;">

и все, субмитит на ентер.

Почему это решение здоровее - думаю вполне очевидно ;)


--------------------
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.1097 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.