Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/06/2015, 18:53
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Presionar 1 sola vez el boton

Cuando envías los datos del formulario a procesarse, se produce el evento submit. Lo que puedes hacer (entre las tantas otras alternativas que pueden haber) es usar una variable contadora con el cero como valor inicial, de tal modo que la primera vez que se produzca el evento, lo cancelas con el método .preventDefault() y aumentas el valor de la variable contadora en 1, luego, evalúas el nuevo valor de dicha variable y solo si es igual a 1, utilizas el método .submit() para procesar el formulario. Si se vuelve a pulsar el botón de envío, el valor de la variable contadora aumentará y ya no será igual a 1, por lo que no se volverá a enviar.

Código JavaScript:
Ver original
  1. document.addEventListener("DOMContentLoaded", function(){
  2.     var formulario = document.querySelector("#el id del formulario"),
  3.         contador = 0;
  4.  
  5.     formulario.addEventListener("submit", function(event){
  6.         event.preventDefault(); //Cancelo el evento
  7.  
  8.         contador++; //Aumento el valor de la variable contadora en 1
  9.  
  10.         if (contador === 1){ //Si el valor de la variable contadora es igual a 1
  11.             this.submit(); //Envío los datos del formulario a procesarse
  12.         }
  13.     }, false);
  14. }, false);

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand