scriptaculous artige Komponente zu vermeiden, doppelt einreichen
-
22-09-2019 - |
Frage
Ich bin auf der Suche nach einem Skript der Benutzer zu verhindern, schlägt die Absenden-Button zweimal speziell für lange Zeit der Hintergrundverarbeitung bildet. Ich möchte etwas implementieren, nicht nur funktional, sondern auch optisch ansprechend. Kann jemand Aktie einige Tipps, wie diese verwendet zu erreichen, zum Beispiel scriptaculous?
Danke
Lösung
Es ist nicht scriptaculous, aber ich habe es immer so:
HTML:
<form onsubmit="return checkDoubleSubmit(this) && yourSubmitroutine();">
<input ...>
...
<input type="hidden" value="0" id="dscheck">
</form
Javascript:
function checkDoubleSubmit(form) {
var v = 0;
var e = form.getElementById("dscheck");
if (e != null) {
v = e.value;
v = v * 1; // Coerce to number
e.value = "1";
}
return v == 0;
}
Andere Tipps
Prototyp Verwenden Sie so etwas wie dies ausprobieren können:
var DoubleSubmit = {
prevent: function(){
var forms = document.body.select('form');
forms.invoke('observe', 'submit', DoubleSubmit.observeSubmit);
},
observeSubmit: function(event){
var submitButtton = event.element().select('input[type="submit"]')[0];
submitButtton.disable();
return true;
}};document.observe('dom:loaded',DoubleSubmit.prevent);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow