Отправить форму по таймеру

 
0
 
JavaScript
ava
ReFleX | 05.10.2004, 16:41
Есть два фрейма. _top и _main

В верхнем тикает таймер, когда на таймере 0, то он должен в _main фрейме нажать на Submit в форме frmTest.


if (h == 0 & m == 0 & s == 0){
Javascript:SubmitBtn();
}

//------------------------------------------
function SubmitBtn() {
 var theform;
 if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
  theform = document.main.forms["frmTest"];
 }
 else {
  theform = document.main.frmTest;
 }

 theform.submit();
}


Вот код, но походу я там не то придамал :(
Comments (5)
ava
Alx | 05.10.2004, 16:58 #
1.html
<html>
<html>
<head>
<title></title>
<frameset rows="250,*" name="frset" frameborder="no" border="0">
<frame src="top.html" name="_top" scrolling="no" noresize frameborder="no">
<frame src="main.html" name="_main" frameborder="no">
</frameset>
</head>
</html>
</html>


top.html
<html>
<html>
<head>
<title></title>
<script>
function settime()
{if (time_sec_2.innerText == 9 && time_sec_1.innerText == 5)
{time_sec_2.innerText = 0;
time_sec_1.innerText = 0;
time_min.innerText = 1;
subm();
document.body.timer="stop";
}
else
if (time_sec_2.innerText <= 8)
{time_sec_2.innerText++;
}
else
{time_sec_2.innerText = 0;
time_sec_1.innerText++;
}
if (document.body.timer=="play")
setTimeout ("settime()", 1000)
}
function subm()
{window.top.frames._main.document.forms.myForm.submit();
}
</script>
</head>
<body onload="settime();" timer="play">
<basefont face="Verdana" size="2">
<b>0</b><b id="time_min">0</b>:<b id="time_sec_1">0</b><b id="time_sec_2">0</b>
</body>
</html>


main.html
<html>
<html>
<head>
<title></title>
</head>
<body>
<basefont face="Verdana" size="2">
<form name="myForm" action="server.php" method="POST">
<textarea name="txt">Hello world!</textarea>
<br>
<input type="submit" value="Отправить!">
</form>
</body>
</html>
ava
Sardar | 06.10.2004, 01:12 #
Цитата (ReFleX @ 5.10.2004, 14:41)
if (h == 0 & m == 0 & s == 0){ Javascript:SubmitBtn(); }

Вот это не совсем JS... :)

ALEXANDRO минусы давать за такой код буду!!! smile Всегда пишешь только под ИЕ, неужели так сложно писать document.getElementById("time_sec_2"), а с атрибутами работать через (get|set)Attribute("name"[,"value"]) ?

ReFleX у тебя есть таймер, if'ом проверяешь не 0 ли сейчас, если да то: top.frames["_main"].forms.frmTest.submit();

Впрочем запостил бы ты код таймера тоже, посмотрим, посоветуем smile
ava
Alx | 06.10.2004, 15:52 #
Sardar smile
я же тебе объясняю, мне не трудно! Но я не знаю, что Нетскапа принимает только getElementById, setAttribute и т.д.! Я просто не знаю, что именно надо использовать! Я поэтому и спрашивал, где есть такая инфа!

added later:
Цитата
window.top.frames._main.document.forms.myForm.submit();

заметь, я старался! Если бы писал под ИЕ, написал бы

top.main.myForm.submit();


(ну или что-то типа)
ava
ReFleX | 06.10.2004, 17:47 #
Цитата
Впрочем запостил бы ты код таймера тоже, посмотрим, посоветуем

Да таймер нормально работает smile
Примерно такой же как у ALEXANDRO
ava
Aliance | 06.10.2004, 20:12 #
ALEXANDRO
Цитата (ALEXANDRO @ 6.10.2004, 15:52)
Я поэтому и спрашивал, где есть такая инфа!

http://forum.vingrad.ru/index.php?showtopic=30075
Please register or login to write.
Firm of day
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Contributors
  Sardar   Alx ava  Aliance   ReFleX
advanced
Submit