Foros del Web » Programando para Internet » ASPX (.net) »

Cambiar imagen al hacer click en un imagebutton

Estas en el tema de Cambiar imagen al hacer click en un imagebutton en el foro de ASPX (.net) en Foros del Web. Hola! Necesito ayuda con mi aplicacíón web he conseguido cambiar la imagen de un botón que me sirve de encendido y apagado. Inicialmente el botón ...
  #1 (permalink)  
Antiguo 24/10/2009, 04:36
 
Fecha de Ingreso: mayo-2009
Mensajes: 65
Antigüedad: 14 años, 11 meses
Puntos: 0
Cambiar imagen al hacer click en un imagebutton

Hola! Necesito ayuda con mi aplicacíón web he conseguido cambiar la imagen de un botón que me sirve de encendido y apagado. Inicialmente el botón esta apagado y he conseguido que al hacer click en él cambie la imagen a encendida para indicar que está en funcionamiento. El problema lo tengo en cómo hago ahora para que al hacer otra vez click en el botón se cargue la imagen de apagado. Os pongo el código que he conseguido hacer:

<asp:ImageButton ID="ImageButton35" runat="server"

ImageUrl="~/imagenes/herziosoff.bmp"

OnClientClick="this.src=(this.src=='imagenes/herziosoff.bmp' ? 'imagenes/herzioson.bmp' :
'imagenes/herzioson.bmp'); return false;"

style="position: absolute; height: 25px; top: 157px; left: 122px; width: 30px; z-index: 1; right: 648px;" />

Muchas gracias
  #2 (permalink)  
Antiguo 26/10/2009, 07:00
Avatar de pyroCL  
Fecha de Ingreso: marzo-2009
Ubicación: C#
Mensajes: 261
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Cambiar imagen al hacer click en un imagebutton

podrias crear en tu pagina una label con propiedad "visible = false" a la cual le entregas un 1 o un 2 segun sea el caso...

Y vas haciendo coprobacion del numero que esté en la label...

Ejemplo:
1 será prendido.
2 será apagado.

Al presionar el boton, si es que la label tiene el valor 1 la imagen del boton se cambia a apagado y le das a la label el valor 2
Si lo presionas y el valor de la label es 2, cambias la imagen del boton a encendido y el valor de la label a 1.

Espero te sirva.

Saludos!.
__________________
La verdadera sabiduría está en reconocer la propia ignorancia.
  #3 (permalink)  
Antiguo 26/10/2009, 13:52
 
Fecha de Ingreso: enero-2006
Mensajes: 293
Antigüedad: 18 años, 3 meses
Puntos: 4
Respuesta: Cambiar imagen al hacer click en un imagebutton

casi tenías la respuesta:

Código Javascript:
Ver original
  1. OnClientClick="this.src = (this.src.indexOf('herzioson.bmp') == -1 ? 'herzioson.bmp' : 'herziosoff.bmp'); return false;"


explico:

la primera parte this.src al lado izquierdo del igual (vas a asignar)
la parte derecha esta en la siguiente forma (tiene un nombre perono lo recuerdo) es un tipo de IF

(condicion ? resultado IF : resultado ELSE )

por lo tanto, nuestra condición sería

this.src.indexOf('herzioson.bmp') == -1

//osea, si this.src NO contiene herzioson.bmp

el valor que le asignamos a this.src depende de lo que nos regrese nuestra condicion..

bueno, espero no haberte confundido

suerte!
  #4 (permalink)  
Antiguo 27/10/2009, 04:05
 
Fecha de Ingreso: mayo-2009
Mensajes: 65
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Cambiar imagen al hacer click en un imagebutton

Muchas gracias por vuestra ayuda, en cuanto llegue a casa estoy probandolo haber si funciona y ya os contaré.
Mientras que esperaba alguna respuesta me ha surgido la duda de como podría hacer esto mismo si tengo más de dos imágenes, por ejemplo un imagebutton que en cada click que haga sobre él me vaya mostrando 4 imágenes diferentes. Lo intentaré hacer con las ideas que me habeis dado.
Muchas gracias.
  #5 (permalink)  
Antiguo 28/10/2009, 02:15
 
Fecha de Ingreso: mayo-2009
Mensajes: 65
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Cambiar imagen al hacer click en un imagebutton

Funcionaaa!!! Gracias por vuestra ayuda intente las dos soluciones que me disteis y al final la de Osvier me funcionó. Ahora intento hacer lo mismo con más de dos imágenes y no me funciona supongo que habrá que cambiar la condición, se os ocurre cómo prodría ser??
Un saludo
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 11:07.