Foros del Web » Programando para Internet » Javascript »

Como evito el doble submit

Estas en el tema de Como evito el doble submit en el foro de Javascript en Foros del Web. Hola, cuando el servidor está muy lento, algunos usuarios presionan varias veces al boton de envío, por lo tanto gatillan varias veces la misma transacción, ...
  #1 (permalink)  
Antiguo 29/01/2003, 09:24
 
Fecha de Ingreso: noviembre-2002
Mensajes: 35
Antigüedad: 21 años, 5 meses
Puntos: 0
Como evito el doble submit

Hola, cuando el servidor está muy lento, algunos usuarios presionan varias veces al boton de envío, por lo tanto gatillan varias veces la misma transacción, como puedo evitar esto, alguien tiene una idea?

Gracias
__________________
JF
  #2 (permalink)  
Antiguo 29/01/2003, 09:43
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
si es un boton tendrias que validarlo via javascript con el evento onclick.

basta con un flag y una funcion en javascript para ejecutar tu submit la primera vez y no las siguientes...

presionas el botn
llamas a la funcion con un flag en 0
cambias el flag a 1
haces el submit

si presionan de nuevo preguntas por el flag y si su condicion es 1 no haces el submit nuevamente

el flag puede ser un input tipo hidden que se cargue con 0 y que al momento de presionar el boton cambie a 1.

no te pego codigo js. o si no los modeeradores me censuraran

pero esta la idea
  #3 (permalink)  
Antiguo 29/01/2003, 09:52
 
Fecha de Ingreso: noviembre-2002
Mensajes: 35
Antigüedad: 21 años, 5 meses
Puntos: 0
Gracias, ya probé esto y no funciona, pasa que si llamas nuevamente a la funcion javascript aborta el submit solo en panatalla, o sea me quedo parado hay mismo pero igual inserta la operacion, pero como no se cambia de pantalla el usuario piensa que no paso nada...
__________________
JF
  #4 (permalink)  
Antiguo 29/01/2003, 09:59
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
se supone que solo debes ejecutar la operacion cuando el flag esta en 0 o algo asi..

antes de ejecutar tu trx pregunta por le valor del flag.
  #5 (permalink)  
Antiguo 29/01/2003, 19:18
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 3 meses
Puntos: 4
Coloca esto entre <head>
<script>
function submitonce(theform){
if (document.all||document.getElementById){
for (i=0;i<theform.length;i++){
var tempobj=theform.elements[i]
if(tempobj.type.toLowerCase()=="submit"||tempobj.t ype.toLowerCase()=="reset")
tempobj.disabled=true
}
}
}
</script>


y esto en form

<form name="form1" method="post" action="pagina.asp" onSubmit="submitonce(this)">

a mi siempre me ha funcionado, me avisas cualquier cosa
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #6 (permalink)  
Antiguo 29/01/2003, 21:55
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 3 meses
Puntos: 2
me parece que en el scripmaster hay un codigo para eso..
__________________
Manual de ASP Avanzado ;-)
  #7 (permalink)  
Antiguo 30/01/2003, 15:29
 
Fecha de Ingreso: noviembre-2002
Mensajes: 35
Antigüedad: 21 años, 5 meses
Puntos: 0
Lexus, gracias pero no hay caso si presiono 2 veces, ingresa 2 transacciones, ahora la diferencia es que por lo menos llega a la venta de destino....
__________________
JF
  #8 (permalink)  
Antiguo 30/01/2003, 20:52
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 3 meses
Puntos: 4
claro qeu si hay caso, con el cogdigo que te di, solo deja oprimir una vez el boton, por ende solo deja enviar una vez el formulario, solo lo procesa una vez.

a mi me funciona a la perfeccion y me sirve para no dejar que me envien un formulario dos veces al oprimir el boton dos veces seguidas
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #9 (permalink)  
Antiguo 31/01/2003, 08:38
 
Fecha de Ingreso: noviembre-2002
Mensajes: 35
Antigüedad: 21 años, 5 meses
Puntos: 0
Correcto, tienes toda la razón funciona perfectamente para los botones Submit, el problema es que mi boton es uno grafico (IMG) que llama a una función de validación que hace el submit, como podría deshabilitar esta imagen para que no la puedan presionar.... como lo hace tu algoritmo con lo campos de formulario?


Gracias
__________________
JF
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 00:54.