С Новым годом! Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.99/106: Рейтинг темы: голосов - 106, средняя оценка - 4.99
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161

Как при нажатии на ентер переходить на следующий input?

06.09.2013, 18:24. Показов 20405. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Уже весь мозг себе вынес злой как собака.

HTML5
1
2
3
4
5
6
7
8
9
<td>
<input id="" class="section" type="text" name="section[5729]" value="33333llll">
</td>
<td>
<input id="" class="section" type="text" name="section[1602]" value="3333">
</td>
<td>
<input id="" class="section" type="text" name="section[1597]" value="55555">
</td>
вот инпуты с классом section, мне нужно чтобы при нажатии на инпут ентера, курсор переходил на следующий.

Вот то что пробовал:
JavaScript
1
2
3
4
5
6
7
 jQuery(function () {
    jQuery('.sub_obj_edit input').keypress(function (event) {
        if (event.which == '13') {
            event.preventDefault();
        }
    })
});
Это чтобы форма не сабмитилась при нажатии на ентер.

И вот событие нажатия кнопки

JavaScript
1
2
3
4
5
6
7
8
9
10
  $(".section").keyup(function (event) {  
 
        if (event.which == '13') {
            event.preventDefault();
          
            $(this).next().focus();
   
        }
       
    });
Нехотет. Я думаю может определять индекс элемента, а потом писать

JavaScript
1
$(".section").eq(3).focus();
Только вот и индекс не могу определить. Жопа короче.
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.09.2013, 18:24
Ответы с готовыми решениями:

Javascript перенос строки при нажатии ентер
есть код, наложения текста на изображение, но при нажатии на ентер, на картинке не отображается перенос строки, но при нажатии на...

Как сделать чтобы при нажатии на кнопку next активировался следующий radio (см. код)!?
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt; &lt;html...

Как реализовать систему нашёл предмет=можешь переходить на следующий уровень?
Здравствуйте, друзья. Хочу в 2д платформере сделать сделать простую систему, в которой что-бы можно было встать на спрайт перехода уровня...

27
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 10:31
JavaScript
1
2
3
4
5
6
7
8
9
10
 $(document).ready(function() {
        
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parent().next().find('.section').focus();
                event.preventDefault();
            }
        });
 
    });
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 10:58  [ТС]
Нехочет
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 11:01
По первому инпуту пользователь сам должен кликать или по энтеру? Сейчас работает, если пользователь сам по нему кликает, а потом через клавишу...
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 11:19  [ТС]
Пользователь ставит курсор в первый инпут, потом чтото печатает и когда жмет энтер, нужно чтобы переходил на следующий инпут, так просто удобно, потомучто очень большие таблицы с данными, и нажимать постоянно мышкой будет неудобно.

Вот скриншет формы


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

HTML5
1
2
3
4
5
6
<td>
<input id="" class="section" type="text" name="section[1602]" value="3333">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[1602]" value="2,7">
</td>
Я хочу потом для каждого столбца приделать эту фичу с ентером.
 Комментарий модератора 
Прикрепляйте файлы и изображения к сообщениям.
https://www.cyberforum.ru/abou... post594251
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 11:22
JavaScript
1
2
3
4
5
6
7
8
9
10
 $(document).ready(function() {
        
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parent().next().find('input').focus();
                event.preventDefault();
            }
        });
 
    });
1
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 11:30  [ТС]
Оно переходит на следующий инпут неважно с каким классом, а мне нужно чтобы переходил на следующий инпут с классом section

HTML5
1
2
3
4
5
6
7
8
9
<td>
<input id="" class="section" type="text" name="section[1602]" value="3333">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[1602]" value="2,7">
</td>
<td>
<input id="" class="section" type="text" name="section[1602]" value="3333">
</td>
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 11:39
JavaScript
1
2
3
4
5
6
7
8
9
10
$(document).ready(function() {
        
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parent().nextAll().find('.section').focus();
                event.preventDefault();
            }
        });
 
    });
Добавлено через 7 минут
Перед фокусом добавьте еще .first() ... я забыл
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 11:43  [ТС]
Нехочет

Вот кусок HTML страницы, чтобы было понятней

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<table class="list_sub_objects">
<tbody>
<tr>
<tr>
<td>
<td>694</td>
<td>2</td>
<td>2</td>
<td>С отделкой</td>
<td>
<td>
<input id="" class="section" type="text" name="section[5729]" value="4444444444">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[5729]" value="2,7">
</td>
<td>
<script type="text/javascript">
<select id="viewed_5729" class="viewed" name="viewed[5729]">
</td>
<td>
<td>
</tr>
<tr>
<td>
<td>785</td>
<td>15</td>
<td>3</td>
<td>С отделкой</td>
<td>
<td>
<input id="" class="section" type="text" name="section[1602]" value="3333">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[1602]" value="2,7">
</td>
<td>
<script type="text/javascript">
<select id="viewed_1602" class="viewed" name="viewed[1602]">
</td>
<td>
<td>
</tr>
<tr>
<td>
<td>743</td>
<td>9</td>
<td>3</td>
<td>С отделкой</td>
<td>
<td>
<input id="" class="section" type="text" name="section[1597]" value="333333">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[1597]" value="11111">
</td>
<td>
<script type="text/javascript">
<select id="viewed_1597" class="viewed" name="viewed[1597]">
</td>
<td>
<td>
</tr>
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 11:52
Вам надо было сразу дать html
JavaScript
1
2
3
4
5
6
7
8
9
10
 $(document).ready(function() {
        
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parents('tr').nextAll().find('.section').first().focus();
                event.preventDefault();
            }
        });
 
    });
1
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 12:05  [ТС]
Работает!! Спасибо большое!!

Скажите а еще на другие поля например top_size, добавить

JavaScript
1
2
3
4
5
6
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parents('tr').nextAll().find('.top_size').first().focus();
                event.preventDefault();
            }
        });
??

И скажите как можно после перехода на следующий инпут выделять весь текст в инпуте?
С этим разобрался, добавил .select()

Добавлено через 4 минуты
Вот я пробую :

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parents('tr').nextAll().find('.section').first().select().focus();
                event.preventDefault();
            }
        });   
   
   
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $(event.target).parents('tr').nextAll().find('.top_size').first().select().focus();
                event.preventDefault();
            }
        });
Если я нахожусь на поле section и жму на ентер, то перепрыгивает на следующее поле top_size
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 12:07
Чтобы работало с несколькими классами тут надо уже по-другому все писать по поводу выделения ничего сказать не могу, так как у меня на маке итак весь текст при переходе выделяется
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 12:54  [ТС]
Спасибо и на этом!!

Скажите пожалуйста хоть примерно как подключить несколько классов?

Добавлено через 9 минут
Я думаю определять класс выбранного элемента, и исходя из этого направлять дальше... Скажите как получить класс выбранного элемента?
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 13:12
кроме top_size еще будут классы которые по enter должны срабатывать?
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 13:21  [ТС]
Да, вот все классы которые нужны:

Тут их много, если хотите можете сделать пример для 3 классов, а остальные я сам добавлю. Спасибо.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<td>
<input id="" class="section" type="text" name="section[5729]" value="4444444444">
</td>
<td>
<input id="" class="top_size" type="text" name="top_size[5729]" value="2,7">
</td>
<td>
<td>
<input id="" class="viewed_text" type="text" name="viewed_text[5729]" value="">
</td>
<td>
<td>
<input id="" class="base_cost" type="text" name="base_cost[5729]" value="111111111">
</td>
<td>
<input id="" class="cost_each_m" type="text" name="cost_each_m[5729]" value="1111111111">
</td>
<td>
<input id="" class="skidka_full" type="text" name="skidka_full[5729]" value="2,41">
</td>
<td>
<input id="" class="full_cost" type="text" name="full_cost[5729]" value="6225636.94">
</td>
<td>
<input id="" class="first_pay" type="text" name="first_pay[5729]" value="10%">
</td>
<td>
<input id="" class="rassroch_usl" type="text" name="rassroch_usl[5729]" value="0%">
</td>
<td>
<input id="" class="rassroch" type="text" name="rassroch[5729]" value="09,2013">
</td>
<td>
<input id="" class="space" type="text" name="space[5729]" value="76.86">
</td>
<td>
<input id="" class="prihoj_space" type="text" name="prihoj_space[5729]" value="10.64">
</td>
<td>
<input id="" class="klad_space" type="text" name="klad_space[5729]" value="0">
</td>
<td>
<input id="" class="life_space" type="text" name="life_space[5729]" value="27.8">
</td>
<td>
<input id="" class="kichen_space" type="text" name="kichen_space[5729]" value="10.18">
</td>
<td>
<input id="" class="slodg" type="text" name="slodg[5729]" value="нет">
</td>
<td>
<input id="" class="sbalkon" type="text" name="sbalkon[5729]" value="">
</td>
<td>
<input id="" class="s1" type="text" name="s1[5729]" value="12.28">
</td>
<td>
<input id="" class="s2" type="text" name="s2[5729]" value="10.64">
</td>
<td>
<input id="" class="s3" type="text" name="s3[5729]" value="0">
</td>
<td>
<input id="" class="s4" type="text" name="s4[5729]" value="0">
</td>
<td>
<input id="" class="s5" type="text" name="s5[5729]" value="0">
</td>
<td>
<input id="" class="sother" type="text" name="sother[5729]" value="0">
</td>
<td>
<input id="" class="ssauna" type="text" name="ssauna[5729]" value="">
</td>
<td>
<input id="" class="ss1" type="text" name="ss1[5729]" value="1,07/2,8">
</td>
<td>
<input id="" class="ss2" type="text" name="ss2[5729]" value="">
</td>
<td>
<input id="" class="ss3" type="text" name="ss3[5729]" value="">
</td>
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 13:25
может проще тогда в условии указать после find классы по которым ходить не надо? Например мне не нужен класс base_cost тогда .not('.base_cost')
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 13:29  [ТС]
Вот пробую так

JavaScript
1
2
3
                $(event.target).parents('tr').nextAll().find('.section').not('.top_size').first().select().focus();
 
                $(event.target).parents('tr').nextAll().find('.top_size').not('.section').first().select().focus();
Но все равно если я жму на ентер находясь на поле section, курсор перепрыгивает на следующий элемент НО с классом top_size
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 13:32
А возможность присвоить класс тем полям по которым надо ходить вы можете? то есть в сам html?
0
 Аватар для paha444
9 / 9 / 4
Регистрация: 04.08.2013
Сообщений: 161
07.09.2013, 13:35  [ТС]
Конечно, вот эти классы я сам присваивал. Можно добавить каждому полю ID например
.section_1
.section_2
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
07.09.2013, 13:40
Добавьте каждому полю где нужен переход по кнопке какой-нибудь class... например enterTrigger и пришлите потом уже весь html...потом гляну
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.09.2013, 13:40
Помогаю со студенческими работами здесь

При нажатии кнопки переходить в Проект2 Form1
Здравствуйте. Не подскажете пожалуйста, как запрограммировать кнопку, чтобы при нажатии переходилось в Проект2 Form1

[JSP] При нажатии на ссылку переходить к определенной странице
У каждого пользователя свой список плейлистов. Нужно чтобы при нажатии на название плейлиста переходило на страницу самого...

При нажатии стрелки вправо переходить к следующему кадру
Здравствуйте, такая проблема. На форме имеется picturebox, две кнопки и textbox. Первая кнопка открывает файл, вторая делает необходимые...

При нажатии кнопки переходить на нужную ссылку в браузере
Привет всем, подскажите пожалуйста, как можно сделать так, чтобы при нажатии кнопки перекидывало на нужную ссылку в браузере?

Как осуществить? При нажатии на текст он превращается в input
Привет! Помоги пожалуйста осуществить такую вещь: при нажатии на текст он превращается в input как (если кому приходилось видеть) в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru