Foros del Web » Programando para Internet » Javascript »

inhabilitar un botón submit

Estas en el tema de inhabilitar un botón submit en el foro de Javascript en Foros del Web. Me gustaría saber si se puede inhabilitar un botón tipo submit al hacer click en el, para que funcione solo una vez. Con algún tipo ...
  #1 (permalink)  
Antiguo 09/09/2003, 08:23
tlk
 
Fecha de Ingreso: julio-2003
Ubicación: zaragoza
Mensajes: 74
Antigüedad: 20 años, 9 meses
Puntos: 0
inhabilitar un botón submit

Me gustaría saber si se puede inhabilitar un botón tipo submit al hacer click en el, para que funcione solo una vez. Con algún tipo de onclick="(inhabilitar boton)". Gracias
__________________
tlk
  #2 (permalink)  
Antiguo 09/09/2003, 08:34
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola, tlk.

<input type="submit" value="Enviar" onclick="this.disabled=true">

Espero que te sirva. Saludos,
  #3 (permalink)  
Antiguo 09/09/2003, 08:55
Avatar de sktrpunk  
Fecha de Ingreso: septiembre-2003
Ubicación: Montevideo
Mensajes: 227
Antigüedad: 20 años, 7 meses
Puntos: 0
Cuidado con ese comando, pq si el usuario tiene problemas con la pagina y no logra cargar la siguiente, el boton qeda deshabilitado, por lo q tendra q recargar la pagina y llenar los campos nuevamente.
Pero es bastante util para evitar duplicados de campos en las bases.
Otra opcion es la q se utiliza aca mismo, en foros del web, q no te permite mandar datos si no pasaron 30 segundos desde q enviaste los ultimos. Prueba hacer doble click sobre el boton de enviar.
Weno, solo una opinion, crei importante considerar esos puntos.
Saludos

AlvAro
__________________
- Sk8 FoR LiFe -
Stay away from my Black Book
  #4 (permalink)  
Antiguo 09/09/2003, 09:03
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
¿Y si ponemos
<FORM
onsbmit="document.forms[0].nombreDelSubmit.disabled=true"
>
?
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #5 (permalink)  
Antiguo 11/09/2003, 06:08
Akerbeltz
Invitado
 
Mensajes: n/a
Puntos:
El primer script no me resolvía el problema, pues anulaba el botón al pulsarlo, pero la información no se envíaba. Es que el formulario anda algo lento pero encontré un script por internet y me funciona de maravilla, es este:

<HEAD>
<SCRIPT>
function disableSubmits (form) {
for (var i = 0; i < form.elements.length; i++)
if (form.elements[i].type.toLowerCase() == 'submit')
form.elements[i].disabled = true;
}
</SCRIPT>
</HEAD>
-----------------------------------------------------
<BODY>
...
<FORM ACTION="loquesea" ONSUBMIT="if (this.submitted) return false; else {
this.submitted
= true; disableSubmits(this); return true; }"
>

Envía el formulario y el botón queda inactivo.
  #6 (permalink)  
Antiguo 12/09/2003, 17:20
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61


Hola Akerbeltz!

Estoy revisando tu solución yyy.... no sé si la mía es más sencilla, eh?

Creo que hace lo mismo... pero te ahorras un montón de código.

¿Para qué recorrer todos los inputs buscando el submit? y para qué poner el if en el onsubmit? si lo deshabilita no se podrá volver a pinchar... entonces para qué comprobar si ya se ha enviado?

O es que hay algo que se me escapa?

En cualquier caso bravo por la solución encontrada!

Un saludo!

__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:03.