Установить фокус ввода на поле после открытия страницы
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Установить фокус ввода на поле после открытия... Expand / Collapse
Автор
Сообщение
27.11.2006 6:30
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 14.12.2007 18:22
Сообщ.: 131, Visits: 824
Требуется установить фокус ввода на нужное поле ввода после открытия страницы.
т.е. к примеру как после загрузки страницы запустить на Jscript функцию:
 onStart(this) ?

Function onStart(f) {
f.Str1.select();
f.Str1.focus();
}

Сообщ. #908023
27.11.2006 10:13
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Вот так можно: <body onload="onStart(document.forms[0])". Если у тебя на странице несколько форм и она не первая, то замени индекс внутри [] на нужный.

[вопрос перенесен из форума ASP в форум по JavaScript]

Сообщ. #908028
26.02.2007 18:45
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 27.02.2007 12:06
Сообщ.: 3, Visits: 9
А как при таком же раскладе ставить фокус, проверяя условие? Если я ставлю в onLoad что-то типа:
if field1 = "test"
{
бла-бла-бла.focus()
}
то не отрабатывает проверка.
Как быть?


CU
Сообщ. #911103
26.02.2007 19:36
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
В JavaScript оператор сравнения состоит из двух знаков равно. И условие надо брать в круглые скобки.

if (field1 == "test")
{
    бла-бла-бла.focus();
}

Сообщ. #911105
27.02.2007 0:37
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 27.02.2007 12:06
Сообщ.: 3, Visits: 9
Спасибо, конечно! Но это я знаю, вообще-то. :) Мне понять бы, почему не отрабатывает эта хрень, если её определить в body onload="..."
в общем, в кавычках... Я забил туда, но не отработала. Почему - не пойму. Завтра посмотрю ещё разок, но подозрение есть, что в onLoad можно определять лишь значение, а не логические операторы... Отпишусь потом ещё.


CU
Сообщ. #911107
27.02.2007 9:08
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 29.05.2008 20:04
Сообщ.: 269, Visits: 2 381
За между прочим =)

<html><head><title> </title></head><body>

<form name="form1">

<input type="text" name="tt1">

</form>

<script>

function A() {

document.form1.tt1.focus();

}

A();

</script></body></html>

Почему именно так будет работать: браузер читает строки кода наталкиваеться на вызов в body функции (например А()) и пытаеться сразу же исполнять документ. С тем условием что дальше тега body документ небыл загружен, а это значит, что фокус устанавливается на несуществующий объект.

зы: Хотя это с одной стороны и выглядит глупо, но с другой обьяснения более лучшего я этому пока не вижу.

----------------------------------
Я безработный...
Возьмите меня на работу. =)

Сообщ. #911114
27.02.2007 9:40
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
2 Eskander

В обработчике события onload можно любой JavaScript писать. Никаких ограничений там нет. Убедись что браузер не выдает тебе ошибок интерпретации или исполнения JavaScript. Или приведи здесь свой код чтобы его можно было проверить.

Сообщ. #911115
27.02.2007 11:00
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 27.02.2007 12:06
Сообщ.: 3, Visits: 9
Вот, что за код генерится у меня...
<body text="#000000" bgcolor="#FFFFFF" id="id-com" class="article"
onload="var Param = window.document.Domino.Param.value;
if (Param == "Edit")
{
window.document.Domino.Comments.focus();
}" link="#000080" alink="#0000FF" vlink="#800080">
Не пойму, то ли Firefox глючит, то ли Лотус... Сперва в консоли не было ошибок, сейчас
Error: window.document.Domino.Param has no properties

Добавил в нужную форму скрытый параметр
<input type="hidden" name="Param" value=...
Заработало. В общем, худо-бедно, но работает. Спасибо за помощь!


CU
Сообщ. #911119
27.02.2007 11:19
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Ты забыл html и javascript код привести. Без них сообщение об ошибке малоинформативно. Понятно только что ты обращаешься к несущствеющему объекту.
Сообщ. #911120
« пред. тема | след. тема »