Вы можете добавить следующий скрипт на свою «страницу макета» (которая будет отображаться на всех страницах по всему миру).
<script type="text/javascript">
$(document).ready(function () {
$(':submit').removeAttr('disabled'); //re-enable on document ready
});
$('form').submit(function () {
$(':submit').attr('disabled', 'disabled'); //disable on any form submit
});
</script>
Затем при каждой отправке формы кнопки отправки отключаются. (Кнопки отправки повторно активируются при загрузке страницы.)
Если вы используете платформу валидации (например, jQuery Validation), вероятно, вам необходимо повторно включить кнопку (кнопки) отправки, если валидация также не удалась. (потому что ошибка проверки формы приводит к отмене отправки).
Если вы используете jQuery Validation, вы можете обнаружить аннулирование формы (отмена отправки формы), добавив следующее:
$('form').bind('invalid-form.validate', function () {
$(':submit').removeAttr('disabled'); //re-enable on form invalidation
});
Затем, если проверка формы завершится неудачно, кнопка (и) отправки снова / снова будет активирована.