Struts2 selbst bietet einen Prüfmechanismus für wiederholte Übermittlungen. Ich möchte jedoch keine Fehlerseite anzeigen, sondern sie so behandeln, als wäre nichts passiert, und nur eine Übermittlung
durchführen Vorlage.
<script type="text/javascript">
Funktion checkSubmit() {
if (checkSubmitFlg == true) {
return false;
}
checkSubmitFlg = true;
return true;
}
</script>
<form onsubmit="return checkSubmit();" method="post">
Methode 1 ist auf IE6 und FIREFOX wirksam
. Da unser Server zu langsam ist, wird die Schaltfläche grau angezeigt eine bessere Erfahrung
<script type="text/javascript">
Funktion disableSubmit(form) {
var elements = form.elements;
for (var i = 0; i < elements.length; i++) {
if (elements[i].type == 'submit') {
elements[i].disabled = true;
}
}
}
</script>
<form name="form1" onsubmit="setTimeout('disableSubmit(form1)',100) return checkSubmit();">
Wenn Sie es sofort deaktivieren, werden die einzelnen Aktionseinstellungen der Schaltfläche
angezeigtwird ungültig, daher ist Methode 2 zum Hinzufügen einer Verzögerung in IE6 gültig. Ungültig auf FIREFOX, Grund unbekannt. Da es sich aber sowieso um die Zweitversicherung handelt, spielt es keine Rolle.
Referenzartikel
http://blog.csdn.net/LoveYou1999/archive/2007/02/02/1501295.aspx
http://www.takka.com.hk/jstutor/ch10/ch10.htm