online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Uesch vom 14.02.2019, 16:42 Options

Button erst inaktiv, dann aktiv

Hallo allerseits,

wollt ma fragen, wie ich es machen kann, dass der ein bestimmter button für beispielsweise 10 Sekunden inaktiv ist und dann erst aktiv wird. Habe folgendes versucht, aber funzt net:

<script language="javascript">
<!--
var secs = 10;
var wait = secs * 1000;
document.sform.submitbtn.disabled=true;

for(i=1;i<=secs;i++) {
window.setTimeout("update(" + i + ")", i * 1000);
}

window.setTimeout("timer()", wait);

function update(num) {
if(num == (wait/1000)) {
document.sform.submitbtn.value = "Senden";
}
else {
printnr = (wait/1000)-num;
document.sform.submitbtn.value = "Senden (" + printnr + ")";
}
}

function timer() {
document.sform.submitbtn.disabled=false;
}
//-->
</script>

Über Antworten wär ich sehr dankbar,

Gruß,

Üsch


Antwort schreiben

Antwort 1 von rabies vom 14.02.2019, 16:57 Options

Ich sehe da kein Problem.

Du hast das Script bestimmt im Header des Quelltextes (<head>) stehen, richtig? Das Problem ist, so denke ich mir, dass zum Zeitpunkt, an dem der Submitbutton auf disabled gesetzt werden soll, der Parser des Browsers das Element 'submitbtn' noch gar nicht kennt.

Der ganze Scriptblock sollte sich nach Deinen Wünschen verhalten, wenn Du Ihn unterhalb des Formulars setzt.

--rabies.

Antwort 2 von Uesch vom 14.02.2019, 17:10 Options

Hmmm,

hab alles gemacht wie dus gesagt hast. Wie muss denn der "Senden-Button" heißen? Denn er heißt jetzt standardmäßig SubmitButtonName.

Antwort 3 von rabies vom 14.02.2019, 17:19 Options

Du sprichst Ihn doch oben schon mit
document.sform.submitbtn
an. Demnach heißt der Submitbutton submitbtn (sprich, dass Attribut name= muss im input-Feld den Wert submitbtn haben)

--rabies.

Antwort 4 von rfb vom 14.02.2019, 17:38 Options

Zitat:
Der ganze Scriptblock sollte sich nach Deinen Wünschen verhalten, wenn Du Ihn unterhalb des Formulars setzt.
ts ts ts.
Für sowas gibts doch den onload-Event, solcher Pfusch ist nicht nötig. Das Script ist eh schon problematisch durch die Nutzung globaler Variablen.

Aber zur Frage: so ganz ist mir nicht klar was diese Kaskade von Timeouts bewirken soll.
Um den Button einmalig erst nach 10s zu aktivieren würde ja ein
window.setTimeout
reichen. Wozu soll diese Vielfalt dienen?

Antwort 5 von rabies vom 14.02.2019, 17:45 Options

Zitat:
ts ts ts.
Ja, ich weiß. Nicht schön. Aber dafür selten. Und es erfüllte den Zweck.

Asche auf mein Haupt. :D

Antwort 6 von Uesch vom 14.02.2019, 18:38 Options

Kannst du mir sagen wie man ein window.setTimeout macht?

Gruß
,
Üsch

Antwort 7 von rfb vom 14.02.2019, 21:48 Options

Der Sinn dieser Frage entzieht sich mir. Du verwendest in deinem Script diese Methode 11 mal!

Antwort 8 von rfb vom 15.02.2019, 13:03 Options

nett wie ich bin kann ich dir ja mal schreiben wie ich dein geschildertes Problem lösen würde, wobei ich den Sinn deiner setTimeout-Kaskade aber immer noch nicht verstehe:

<script type="text/javascript">
function aendere_status(wie) {
var wo=document.sform.submitbtn;
if (wo) wo.disabled=wie;
}
window.onload=function () {
aendere_status(false);
window.setTimeout("aendere_status(true)",10000);
}
</script>


kurz, knapp, keine globalen Variablen, keine Scriptbereiche im body, Sicherheitsabfragen

Antwort 9 von rfb vom 15.02.2019, 13:10 Options

oops, sorry, doppelte Verneinung übersehen, also

...
aendere_status([b]true[/b]);
window.setTimeout("aendere_status([b]false[/b])",10000);

...

Antwort 10 von Uesch vom 23.02.2019, 17:30 Options

ok, danke!

Ähnliche Themen

Geschützter Modus ist inaktiv
jariya24  14.05.2007 - 371 Hits - 1 Antwort

flash button problem
TooWhy  19.06.2007 - 86 Hits -

Merkwürdige Firewall
CallofDuty93  02.11.2007 - 83 Hits -

Wie setze ich eine Parttition wieder auf inaktiv?
Rosesax  23.12.2007 - 91 Hits - 2 Antworten

avast Virenschutz inaktiv
AnnaTherese  22.02.2008 - 52 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026