button deaktivieren

socKe|bla

Erfahrenes Mitglied
huuh
ich möchte das ein button deaktiviert wird, jedoch trotzdem noch die form ge`submitted wird, wenn man ihn anklickt. dafür hab ich den code hier...
<input type="submit" name="weiter" value="Weiter" onClick="this.disabled=true">
nur wird dann sofort der 'Submit' abgebrochen? wie soll ichs anstellen? soll der button einfach eine funktion aufrufe, die den button erst deaktiviert und danach submitted oder wie?
 
??? "ich möchte das ein button deaktiviert wird, jedoch trotzdem noch die form ge`submitted wird, wenn man ihn anklickt" ??? Das ist doch ein wiederspruch ansich , oder verstehe ich nicht was du meinst?

Der Button ist doch eh nicht immer aktiviert, sondern nur wenn man ihn klickt...

ciao
 
ich will das der dann so grau wird, also nichtmehr angeklickt werden kann, um halt doppelposts schon im javascript zu verhindern
 
ahso - Du willst also, das er NACH dem ersten Submit disabled ist...Ich dachte vor dem ersten :rolleyes: theoretisch könntest du auch eine Funktion bauen, die nach dem ersten klicken einen Countdown started, das er z.B. erst nach 5 Sekunden wieder geklicked werden kann...

Nochmal klargestellt:
1) Button normal
2) -> click - formular wir dsubmitted
3) Button deaktiviert, bis die Seite neu geladen worden ist (refresh)

soweit liege ich richtig, oder?


ciao
 
ja ^^ und ich will nur wissen, ob ichs mit einer funktion machen muss oder das irgendwie noch an den button drankleistern kann, weil ich im php script gucke ob der button gesetzt ist und ich das sonst umcoden müsste
 
Ok,

da musst nur ein ganz wenig umschreiben :)

PSEUDOCODE FÜR PHP:
Code:
if(submit){
$dis = ' disabled';
}
else {
$dis = '';
}
Du schaust einfach ob das Formular abgeschickt wurde. Je nachdem belegst du eine Variable - $dis - mit nichts, oder mit " disabled" (freizeichen beachten)... Im Formularteil machst du dann follgendes:
Code:
<input name="submit" type="submit"<?php echo "$dis"; ?>>
Wenn das Formular abgeschickt wurde, ist der Button disabled, ansonsten nicht...

Hoffe das funktioniert :)


ciao

//edit: wenn du es komplett client seitig machen willst, musst du´s mit einer Funktion machen...
 
Zuletzt bearbeitet:
genau also ungefähr so:

<script>
geklickt=0
function senden()
{
if(geklickt==0)
{
geklickt=1
document.formname.submit()
}
else
{
alert("Einmal reicht")
}
}
</script>
<input type="button" onclick="senden()">
 
hmm, nee, das ist alles nicht was ich will...
habs jetzt so gemacht, hät ich eigentlich drauf kommen sollen, stand irgendwie aufem schlauch
PHP:
<form name="form1" method="post" action="aaa">
  <input type="submit" name="Abschicken" value="Abschicken" onClick="this.disabled=true;document.form1.submit()">
</form>
 
die lösung:

im headbereich:
Code:
<script type="text/javascript">
 var checkobj
 function agreesubmit(el){
  checkobj=el
  if (document.all||document.getElementById){
   for (i=0;i<checkobj.form.length;i++){
    var tempobj=checkobj.form.elements[i]
    if(tempobj.type.toLowerCase()=="submit")
    tempobj.disabled=!checkobj.checked
   }
  }
 }
</script>
im formular:
Code:
<input name="agreecheck" type="checkbox" onClick="agreesubmit(this)">Hier steht ein gewünschter Text (z.B. AGB akzeptiert ...)
 
<input type="submit" name="submit" value=" Absenden" disabled>
nach dem Formular:
Code:
<script>
 document.forms.agreeform.agreecheck.checked=false
</script>

Nach dem Klick auf das Häckchenwird der Submitbutton aktiv.

LG Jürgen

www.neuhold.eu
 

Neue Beiträge

Zurück