Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/07/2022, 00:30
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 6 meses
Puntos: 977
Respuesta: cambiar texto del boton y desactivarlo de FORM

Debido a que la pulsación del botón causará que el formulario pase a ser procesado, te sugiero apoyarte en el evento submit y una variable que puedes emplear a manera de activador/desactivador del envío del formulario. Y dado que pretendes cambiar el texto del botón, lo cual me hace suponer que enviarás los datos del formulario por medio de una petición asíncrona (AJAX), será necesario que evites que se ejecute el envío recurriendo al método preventDefault().

Código Javascript:
Ver original
  1. //Variable comodín
  2. let enviar = true;
  3.  
  4. $("#idDelForm").on("submit", event => {
  5.     //Cancelas el envío
  6.     event.preventDefault();
  7.  
  8.     //Si el comodín es "true", se envían los datos
  9.     if (enviar){
  10.         //Cambias el valor del comodín para evitar otro envío mientras el actual se procesa
  11.         enviar = false;
  12.  
  13.         //Cambias el texto del botón
  14.         $("#idDelBotón").val("Nuevo texto");
  15.  
  16.         //Realizas el envío (puedes usar el método $.get(), $.ajax() o el que consideres conveniente)
  17.         $.post("destino.php", $("#idDelForm").serialize())
  18.             .done(response => {
  19.                 //Cambias el valor del comodín para permitir otro envío
  20.                 enviar = true;
  21.  
  22.                 //Cambias el texto del botón
  23.                 $("#idDelBotón").val("Viejo texto");
  24.  
  25.                 //Aquí puedes manipular la respuesta del servidor
  26.                 //Por ejemplo: console.log(response);
  27.             });
  28.     }
  29. });

__________________
«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