Foros del Web » Programando para Internet » Javascript »

Ventanas de confirmación

Estas en el tema de Ventanas de confirmación en el foro de Javascript en Foros del Web. Hola, me gustaría crearme mis propias ventanas de confirmación, pero no se como muy bien. Yo creo un div con el mensaje escrito y 2 ...
  #1 (permalink)  
Antiguo 28/08/2011, 08:55
 
Fecha de Ingreso: abril-2009
Mensajes: 37
Antigüedad: 15 años
Puntos: 3
Ventanas de confirmación

Hola, me gustaría crearme mis propias ventanas de confirmación, pero no se como muy bien.

Yo creo un div con el mensaje escrito y 2 botones (Si y No) personalizado todo mediante css y demas, todo simulando la ventana de confirmación...

Ahora creo una funcion javascript llamada 'laconfirmacion()' que haga aparecer esa capa de confirmación.

Y cuando quiero hacer una pregunta al usuario escribo esto:

Cita:
if( laconfirmacion() ){
alert('Ha dado que si');
}
El problema es que la ejecucion no se para... es decir, yo puedo hacer que al pulsar en si haga un return true y en No un return false... pero como no se ha parado la ejecucion del codigo, ya da igual... ese if ya ha pasado.

Mi duda es como parar la ejecucion del codigo hasta pulsar un boton de si o no... habia pensado en setTimeOut pero no creo que sea buena solución :S

Gracias
  #2 (permalink)  
Antiguo 28/08/2011, 10:55
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Ventanas de confirmación

Hola:

Tanto las validaciones como las confirmaciones deben esperar la respuesta para hacerse efectivas, así que no olvides condicionarlo en la llamada...

onsubmit="return laconfirmacion()"

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 28/08/2011, 11:42
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 3 meses
Puntos: 13
Respuesta: Ventanas de confirmación

por qué no haces algo tipo

<a href="" onclick="laconfirmacion(1)">si</a>
<a href="" onclick="laconfirmacion(0)">Noi</a>
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #4 (permalink)  
Antiguo 29/08/2011, 12:14
 
Fecha de Ingreso: abril-2009
Mensajes: 37
Antigüedad: 15 años
Puntos: 3
Respuesta: Ventanas de confirmación

Lo que quiero hacer es borrar un comentario, entonces lo que hago es poner esto:

Cita:
onclick='javascript:if( laconfirmacion() ){ borracomentario(id); }'
Por eso lo de 'return laconfirmacion()' no me serviria, porque yo quiero que se ejecute 'borracomentario()' al pulsar si.

Y Bam_Margera, tampoco me sirve lo que me has dicho, porque los botones de si y no son dinamicos, es decir, no tienen una funcion basica, sirven tanto para borrar comentarios, como para añadirlos, modificarlos...
  #5 (permalink)  
Antiguo 29/08/2011, 13:56
 
Fecha de Ingreso: septiembre-2010
Mensajes: 525
Antigüedad: 13 años, 7 meses
Puntos: 59
¿No te sirve el método confirm?

Ej.:
Código Javascript:
Ver original
  1. if (confirm("¿Quieres borrar?"){alert("Si")}
  2.   else{alert("No")}

__________________
01011111 01000001 01100100 01110010 01101001 01100001 01101110 01011111
  #6 (permalink)  
Antiguo 29/08/2011, 14:12
 
Fecha de Ingreso: abril-2009
Mensajes: 37
Antigüedad: 15 años
Puntos: 3
Respuesta: Ventanas de confirmación

Es que lo que yo realmente quiero es imitar confirm(), ya que esta función no se puede personalizar, ni en botones ni su aspecto mediante css...
  #7 (permalink)  
Antiguo 29/08/2011, 14:24
 
Fecha de Ingreso: septiembre-2010
Mensajes: 525
Antigüedad: 13 años, 7 meses
Puntos: 59
Aquí hay un confirm personalizado, pero está hecho con JQuery.

__________________
01011111 01000001 01100100 01110010 01101001 01100001 01101110 01011111

Etiquetas: ventanas, botones
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 05:52.