|
|
|
| Прет всем!
в JS я не силён и вот необходима помощь, как сделать чтобы кнопка Сабмит была неактивна указанное мною количество секунд? | |
|
|
|
|
|
|
|
для: 10100100
(05.01.2007 в 08:04)
| |
<script>
function Dis(el,tm)
{
el.disabled = true;
Dis.obj = el;
setTimeout('Dis.obj.disabled = false;',tm * 1000);
}
</script>
<form>
<input type="submit" onclick="Dis(this,3)">
</form>
|
| |
|
|
|
|
|
|
|
для: RMW
(05.01.2007 в 09:49)
| | эм... спасибо за скрипт, но чтото он странно работает - на кнопку нажать можно - толкьо данные не отправляются.
да и мне нужно чтобы нельзя было на неё нажать до истеченя опр. срока. | |
|
|
|
|
|
|
|
для: 10100100
(05.01.2007 в 11:44)
| | Может быть так?
<script>
function Dis(id,tm)
{
Dis.obj = document.getElementById(id);
Dis.obj.disabled = true;
setTimeout('Dis.obj.disabled = false;',tm * 1000);
}
</script>
<form>
<input type="submit" id="sb">
</form>
<script>Dis('sb',5)</script>
|
или так:
<script>
window.onload = function()
{
setTimeout('document.getElementById(\'sb\').disabled = false;',5000);
}
</script>
<form>
<input type="submit" id="sb" disabled="true">
</form>
|
| |
|
|
|
|
|
|
|
для: RMW
(05.01.2007 в 12:29)
| | попробовал первым методом - всё работает - спасибо (первым методом из Вашего последнего сооба) | |
|
|
|
|
|
|
|
для: RMW
(05.01.2007 в 12:29)
| | Люди прошу очень переделать этот скрипт так, чтобы:
1) когда кнопка неактивна, на ней показывалось обратный отсчёт в сеунадах через сколько она станет активной.
2) Когда она станет активной, текст н кнопки должен измениться.
Ну что-то типа такого:
Кнопка неактивна:
"До продолжении регистрации осталось (60) секунд"
*число 60 уменьшается до 0
Кнопка становится активной:
и на ней появляется надпись "Регистрация"
Очень ваш прошу помочь. | |
|
|
|
|
|
|
|
для: The_muffler
(24.01.2007 в 12:45)
| |
<script>g=function(X){return document.getElementById(X);};sbN=5;</script>
<form onsubmit=return!1>
<input type="submit" id="sb" value=12345 onclick="this.disabled=!0;sbI=sbN;this.value='Осталось '+sbI+' секунд';ww=setInterval("if(--sbI<=0){g('sb').disabled=!1;g('sb').value=g('sb').defaultValue;clearInterval(ww);}else g('sb').value=g('sb').value.replace(/\\d+/,sbI);",1000);">
|
| |
|
|
|
|
|
|
|
для: 12345
(24.01.2007 в 17:14)
| | Спасибо большое))) Только надо наоборот немного)
Чтобы кнопка сначала, прям сразу была неактивной, а потом стала активной | |
|
|
|
|
|
|
|
для: The_muffler
(24.01.2007 в 19:14)
| | для этого запишите атрибут disabled=on в теге input.
И имейте в виду, что отправлять форму можно не только нажатием кнопки, но и нажатием клавиши "Enter". Обойти можно, отменив onsubmit, как показано во 2-й строчке. Но, чтобы кнопка работала вообще когда-либо, отправлять с неё надо командой this.form.submit(); , которая не блокируется:
<form ... onsubmit=return!1>
...
<input type=submit onclick="this.form.submit();(далее все те команды блокировки кнопки)"> | |
|
|
|
|
|
|
|
для: 12345
(24.01.2007 в 19:42)
| | Блин...чё-то никак не получается(... может вы сможете это скрипт поправить....:
<script><!--
var time = 60;
function accept_reg()
{
time--;
frm = document.accept_reg;
if (frm)
frm.submit.value = 'До продолжения регистрации осталось ('+time+') секунд';
if (time>0)
window.setTimeout("accept_reg()",1000);
else if (frm)
{
frm.submit.value = 'Зарегистрировать нового пользователя';
frm.submit.disabled=0;
}
}
accept_reg();
--></script>
<form action="http://www.ya.ru" method="post" name="accept_reg" id="accept_reg">
|
| |
|
|
|
|
|
|
|
для: The_muffler
(24.01.2007 в 19:55)
| | Во-первых,
onload=accept_reg;
потом может, ещё что-то всплывёт. | |
|
|
|
|
|
|
|
для: 12345
(24.01.2007 в 20:15)
| | Всё сделал. всё работает:
<form action="index.php?name=Account" method="post" name="accept_reg" id="accept_reg">
<table>
<tr>
<td class="formbuttonrow"><input type="submit" value="До продолжения регистрации осталось (60)" disabled="disabled" class="button" name="submit"></td>
</tr>
</table>
</form>
<script><!--
var time = 60;
function accept_reg()
{
time--;
frm = document.accept_reg;
if (frm)
frm.submit.value = 'До продолжения регистрации осталось ('+time+') секунд';
if (time>0)
window.setTimeout('accept_reg()',1000);
else if (frm)
{
frm.submit.value = 'Новый пользователь';
frm.submit.disabled=0;
}
}
accept_reg();
--></script>
|
| |
|
|
|
|
|
|
|
для: The_muffler
(24.01.2007 в 21:21)
| | Это неправильно. Нет гарантии, что документ определится до onload. | |
|
|
|
|
|
|
|
для: 12345
(24.01.2007 в 23:27)
| | Твои предложения? как это исправить? | |
|
|
|
|
|
|
|
для: The_muffler
(25.01.2007 в 15:34)
| | Ну писал уже:
onload=accept_reg; | |
|
|
|
|
|
|
|
для: 12345
(25.01.2007 в 15:43)
| | >Ну писал уже:
>
>onload=accept_reg;
Это в какое место? | |
|
|
|