|
|
|
Supreme Being
      
участник
Last Login: 14.12.2007 18:22
Сообщ.: 131,
Visits: 824
|
|
Требуется установить фокус ввода на нужное поле ввода после открытия страницы. т.е. к примеру как после загрузки страницы запустить на Jscript функцию: onStart(this) ?Function onStart(f) { f.Str1.select(); f.Str1.focus(); }
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Вот так можно: <body onload="onStart(document.forms[0])". Если у тебя на странице несколько форм и она не первая, то замени индекс внутри [] на нужный. [вопрос перенесен из форума ASP в форум по JavaScript]
|
|
|
|
|
новичок
      
участник
Last Login: 27.02.2007 12:06
Сообщ.: 3,
Visits: 9
|
|
А как при таком же раскладе ставить фокус, проверяя условие? Если я ставлю в onLoad что-то типа:
if field1 = "test"
{
бла-бла-бла.focus()
}
то не отрабатывает проверка.
Как быть?
CU
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| В JavaScript оператор сравнения состоит из двух знаков равно. И условие надо брать в круглые скобки. if (field1 == "test") { бла-бла-бла.focus(); }
|
|
|
|
|
новичок
      
участник
Last Login: 27.02.2007 12:06
Сообщ.: 3,
Visits: 9
|
|
Спасибо, конечно! Но это я знаю, вообще-то. :) Мне понять бы, почему не отрабатывает эта хрень, если её определить в body onload="..."
в общем, в кавычках... Я забил туда, но не отработала. Почему - не пойму. Завтра посмотрю ещё разок, но подозрение есть, что в onLoad можно определять лишь значение, а не логические операторы... Отпишусь потом ещё.
CU
|
|
|
|
|
Supreme 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 документ небыл загружен, а это значит, что фокус устанавливается на несуществующий объект. зы: Хотя это с одной стороны и выглядит глупо, но с другой обьяснения более лучшего я этому пока не вижу.
----------------------------------
Я безработный...
Возьмите меня на работу. =)
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| 2 Eskander В обработчике события onload можно любой JavaScript писать. Никаких ограничений там нет. Убедись что браузер не выдает тебе ошибок интерпретации или исполнения JavaScript. Или приведи здесь свой код чтобы его можно было проверить.
|
|
|
|
|
новичок
      
участник
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
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Ты забыл html и javascript код привести. Без них сообщение об ошибке малоинформативно. Понятно только что ты обращаешься к несущствеющему объекту.
|
|
|
|