[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Ввод номера телефона
DmitryOpalev
Вот по книге попытлася.
JavaScript
<script language = "JavaScript">

function countChar(counter)
{
if (document.frm.txt1.value.length == counter)
document.frm.txt2.focus();
}
</script>

HTML:
<form name='frm'>
8-<input type="text" value="" name="txt1" maxlength="3" size="3" onkeyup="countChar(3)">-
<input type="text" value="" name="txt2" maxlength="3" size="3" countChar(3)>-
<input type="text" value="" name="txt3" maxlength="3" size="2" countChar(2)>-
<input type="text" value="" name="txt4" maxlength="3" size="2" countChar(2)>-
</form>

Вообщем, первое поле переключается на второе, а на третье уже не хочет... попытался еще функции прописать, но все равно не работает... подскажите...



Спустя 17 минут, 36 секунд (13.11.2010 - 22:11) inpost написал(а):
Для второго поля ты не делаёшь команды, в данном случае "onkeyup".
Так же ты указываешь, что фокус будет именно на txt2, сделай проверку, и если тхт1, значит 2, если 2 - значит 3, если 3 - фокус на 4.

Спустя 3 минуты, 31 секунда (13.11.2010 - 22:15) DmitryOpalev написал(а):
<script language = "JavaScript">

function countChar(counter)
{
if (document.frm.txt1.value.length == counter)
document.frm.txt2.focus();
if (document.frm.txt2.value.length == counter)
document.frm.txt3.focus();
if (document.frm.txt3.value.length == counter)
document.frm.txt4.focus();
}
</script>

Так не работает

Спустя 15 минут, 34 секунды (13.11.2010 - 22:31) inpost написал(а):
вызываешь функцию, передаёшь 2 параметра: длину, как у тебя 3, и имя следующего файла, куда будет фокус.

function countChar(counter,nexte)
{
var nexte = nexte;
document.frm.next.focus();
}
onkeyup="countChar(3,"txt4")"

Спустя 7 минут, 50 секунд (13.11.2010 - 22:38) DmitryOpalev написал(а):
Если это полный код, то не работает:
<script language = "JavaScript">

function
countChar(counter,nexte)
{
var nexte = nexte;
document.frm.next.focus();
}
</script>

<body>
<form
name='frm'>
8-<input type="text" value="" name="txt1" maxlength="3" size="3" onkeyup="countChar(3,'txt2')">-
<input type="text" value="" name="txt2" maxlength="3" size="3" onkeyup="countChar(3,'txt3')">-
<input type="text" value="" name="txt3" maxlength="3" size="2" onkeyup="countChar(2),'txt4')">-
<input type="text" value="" name="txt4" maxlength="3" size="2" onkeyup="countChar(2)">-
</form>

Спустя 12 минут, 34 секунды (13.11.2010 - 22:51) inpost написал(а):
В этих строчках ошибка:
<input type="text" value="" name="txt3" maxlength="3" size="2" onkeyup="countChar(2),'txt4')">
<
input type="text" value="" name="txt4" maxlength="3" size="2" onkeyup="countChar(2)">


Теперь тут:
Ты назначил переменную:
var nexte = nexte;
И поменял фокус:
document.frm.next.focus(); При этом как переменная называется? frm.next.focus??? А где условие? У тебя должна быть проверка:
if (document.frm.txt1.value.length == counter) тут написан полный путь:
document - этот документ, frm (элемент имеет имя FRM = name="frm"), txt1 (элемент имеет имя txt1, предлагаю передавать его), value - это его значение, тоесть значение инпута! lenght - длина. Написано: если длина объекта равняется значению (переданному) - то действие.

<input type="text" value="" name="txt1" maxlength="3" size="3" onkeyup="countChar(3,'txt1','txt2')">


function countChar(counter,perviy,vtoroy)
{
if (document.frm.perviy.value.length == counter)
document.frm.vtoroy.focus();
}


Скачай "Андрей Морковин: Видеоуроки по JavaScript" - мне очень помог разобраться в этом всём.


_____________
Курс валют
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.