Событие при загрузке... формы.

John1123

Новичок
Событие при загрузке... формы.

надо выполнить некую функцию JavaScript после загрузки формы (после загрузки формы, но до того, как элементы формы получат фокус, и т.п.)

вариант onLoad на страницу не подходит.

Есть идея поместить форму в iframe и применять onLoad туда, но очень не хочется этого из-за врожденной неприязни к фреймам.

Есть ли еще варианты?
 

John1123

Новичок
т.е.

...
</form>
<script>
некаяФункция();
</script>

Причем именно вне формы?
 

John1123

Новичок
меня сбило с толку, что внутри формы данная конструкция не срабатывала...
 

Solid

Drosera anglica
К форме присваиваете идентификационный номер. В скрипте, который загружается в head вы добавляете нечто вроде:
Код:
var rules = {
		'#form1' : function(el){
			el.onload = function() {
				alert('form loaded');
			}
		}
};
Behaviour.register(rules);
берёте зеркало, и внимательно наблюдаете, как у вас на лице медленно, но очень видимо, нарастает улыбка.
 

HEm

Сетевой бобер
PHP:
<form name="a">
<input type="text" name="aa">
</form>
<script>
<!--
document.forms['a'].aa.value = "aaa";
-->
</script>
<pre>
<?
for ($i=1;$i<1000;$i++) { echo "<h1>$i</h1>"; var_dump($_SERVER); }
?>
</pre>
такой тест у меня сработал, страница еще грузилась, а значение в инпут прописалось
 

Solid

Drosera anglica
Может быть, вы всётаки призадумаетесь надо тем, почему я вам предлагаю подобный выход из ситуации, а не ту малевню, которую вы тут пишите? Разделяй и властвуй -- правильный закон. Мешать всё в кашу (что вы и делаете) -- не правильно. Пока вы это не поймёте, вы так и будете ходить с закрытыми глазами по граблям, пока в конце концов не упадёте в пропасть.
 

HEm

Сетевой бобер
да, я как раз хотел спросить, спасибо за объяснение

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

Solid

Drosera anglica
HEm
В любом случае этот метод будет правильным, т.к. он вам в любом случае сэкономит время, а так же сделает вашу методику разработки веб-приложений более правильной, что ли...
 
Сверху