El caso de uso
El usuario de un formulario puede hacer clic en el botón de envío una y otra vez haciendo que el formulario se envíe. Esto puede ser problemático si sólo quieres un clic, pero está permitido por la especificación del W3C para un envío.
Cómo resolverlo
Si le preocupa que el usuario final haga clic una y otra vez, entonces oculte el botón cuando lo haga.
Establecer una variable cuando se hace clic (por la configuración del botón) y establecer la visibilidad para ocultar el botón.
Opcionalmente, también mostraría un mensaje diferente que diga procesando para que el usuario final sepa que la tarea está enviada.