Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   переход по полям enter'ом (https://javascript.ru/forum/dom-window/45410-perekhod-po-polyam-enter%27om.html)

dimon76 27.02.2014 16:55

переход по полям enter'ом
 
всем привет! такая закавыка не могу вьехать как сделать - есть форма - 2 поля и кнопка ентером нужно переходить с первого поля на второе потом на кнопку и отправить. все что пока у меня получилось - жто перейти на 2-е поле. как с него на кнопку не могу въехать. хотя подозреваю, что на кнопку и переходить то не нужно, думаю что ко второму полю привязать сабмит нужно, но не знаю как... :( вот что у меня пока получилось:
$(document).ready(function() {
        
        $(document).keypress(function(event) {
            if(event.keyCode==13){
                $('#pasmain').focus();
               
            }
        });
 
    });

сама форма
<form method="post" id="k">
<input type="text" id="login" tabindex="1" autocomplete="on" name="login" value="" style="margin-left:17px;"><br>
<input type="password" id="pasmain" name="pasmain" tabindex="2" autocomplete="on" value="" style="margin-left:17px;"><br>

<input type="button" onclick="log_in();" value="Login" class="ok" id="all">
	</form>

danik.js 27.02.2014 17:47

Переход происходит по табу. А по ентеру - отправка формы. Не надо ничего выдумывать. Это ожидаемое поведение - а если изменить то получится наебалово.

dimon76 27.02.2014 17:49

если бы ничего не нужно было выдумывать, то я сюда бы не писал...

danik.js 27.02.2014 17:51

А зачем это? Во имя зла не буду помогать) Может это действительно будет удобно?

dimon76 27.02.2014 18:08

заполнил логин - нажал ентер, заполнил пароль - нажал ентер и вошел

danik.js 27.02.2014 18:15

Так никто не будет делать. Все жмут таб если хотят перейти на другое поле. Так для кого же эти старания?

dimon76 27.02.2014 18:20

ну не я хочу этого точно! заказчику до зеленых соплей хочется.

Zuenf 27.02.2014 18:30

Если очень нужен переход по энтеру вот:
<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
</head>
<body>
	<form method="post" id="k">
		<input type="text" id="login" tabindex="1" autocomplete="on" name="login" value="" style="margin-left:17px;"><br>
		<input type="password" id="pasmain" name="pasmain" tabindex="2" autocomplete="on" value="" style="margin-left:17px;"><br>
		<input type="button" onclick="log_in();" value="Login" class="ok" id="all">
	</form>
<script>
	$("#k > input").keypress(function(event) {
            if(event.keyCode==13 && !$(this).is(":button")){
                 $(this).nextAll("input, textarea")[0].focus();
            }
        });
</script>
</body>
</html>

dimon76 27.02.2014 18:36

вот спасибо! бомба! только вот можно ли так сделать чтобы кнопка нажималась без установки на неё фокуса? а то приходится нажимать 2 раза чтоб запустить

dimon76 27.02.2014 18:36

в любом случае в карму +


Часовой пояс GMT +3, время: 15:26.