Struts2 сам по себе предоставляет механизм проверки повторных отправок, но я хочу, чтобы не появлялась страница с ошибкой, а рассматривалось как будто ничего не произошло и выполнялось только одно отправление
. 1. Установите переменную, установите переменную и разрешите только одну. подчинение.
<тип сценария="текст/javascript">
функция checkSubmit() {
если (checkSubmitFlg == true) {
вернуть ложь;
}
checkSubmitFlg = правда;
вернуть истину;
}
</script>
<form onsubmit="return checkSubmit();" метод="post">
Способ 1 эффективен в IE6 и FIREFOX
2. Отключите кнопку, поскольку наш сервер слишком медленный, кнопка становится серой, предоставляя пользователям доступ к ней. лучший опыт
<script type="text/javascript">
функция DisableSubmit (форма) {
элементы вар = form.elements;
for (var я = 0; я < elements.length; я++) {
if (elements[i].type == 'отправить') {
элементы[i].disabled = true;
}
}
}
</script>
<form name="form1" onsubmit="setTimeout('disableSubmit(form1)',100) return checkSubmit();" метод="post">
Если вы отключите его немедленно, настройки отдельных действий кнопки станет недействительным, поэтому метод 2 для добавления задержки действителен в IE6. Недействительно в FIREFOX, причина неизвестна. Но это все равно вторая страховка, так что это не имеет значения.
Справочная статья
http://blog.csdn.net/LoveYou1999/archive/2007/02/02/1501295.aspx
http://www.takka.com.hk/jstutor/ch10/ch10.htm