Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Cambiar estilo de un botón ya creado

Estas en el tema de Cambiar estilo de un botón ya creado en el foro de PHP en Foros del Web. Hola a todos, mi situación es al siguiente: Tengo un botón creado dentro de un fichero php: ?> <button type="button" class="btn btn-danger" id="<?php echo $i ...
  #1 (permalink)  
Antiguo 10/06/2015, 11:28
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Pregunta Cambiar estilo de un botón ya creado

Hola a todos,
mi situación es al siguiente:
Tengo un botón creado dentro de un fichero php:

?>
<button type="button" class="btn btn-danger" id="<?php echo $i ?></button>
<?php

Y me gustaría que si por ejemplo una variable valiera 5, poder cambiar la clase de ese botón para que fuera por ejemplo "btn btn-default" y así el botón cambiase de color de nuevo pero no encuentro la manera de hacerlo. Supongo que si se puede no?


No se si alguien puede ayudarme.
Un saludo y muchas gracias.
  #2 (permalink)  
Antiguo 10/06/2015, 12:00
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Cambiar estilo de un botón ya creado

Tienes que hacerlo con PHP porque aplicar clases no es algo de CSS sino de HTML, y tu HTML lo generas por PHP.

En cualquier caso, SI algo tiene que pasar CUANDO tal cosa, obviamente es una estructura condicional lo que debes de usar.

Muevo el hilo al foro de pehachepé.
__________________
(:
  #3 (permalink)  
Antiguo 10/06/2015, 12:02
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Respuesta: Cambiar estilo de un botón ya creado

No se puede, css no tiene acceso al DOM del documento y no se entera de nada para hacer cambios, lo que puedes es usar javascript para detectar los cambios en los campos y este sea quien se encarga de cambiar la clase del botón.
  #4 (permalink)  
Antiguo 10/06/2015, 12:47
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Iniciado por ArturoGallegos Ver Mensaje
No se puede, css no tiene acceso al DOM del documento y no se entera de nada para hacer cambios, lo que puedes es usar javascript para detectar los cambios en los campos y este sea quien se encarga de cambiar la clase del botón.
He probado este codigo:
http://www.briored.com/jquery/como-c...ml-con-jquery/

Pero necesito que se me cambie al cargar la pagina comprobando una variable no al pulsar un botón.Alguna idea?

Y gracias por vuestras respuestas
  #5 (permalink)  
Antiguo 10/06/2015, 13:22
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Respuesta: Cambiar estilo de un botón ya creado

Si es al cargar la pagina, entonces es lo que te dijo @pzin, tienes que validar el campo previamente a generar el html.

Suerte!
  #6 (permalink)  
Antiguo 10/06/2015, 13:57
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Iniciado por ArturoGallegos Ver Mensaje
Si es al cargar la pagina, entonces es lo que te dijo @pzin, tienes que validar el campo previamente a generar el html.

Suerte!
Si ya se que es con un if pero no me funciona porque el javascript no tiene que tener un Onclick()
  #7 (permalink)  
Antiguo 10/06/2015, 14:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Pero necesito que se me cambie al cargar la pagina comprobando una variable no al pulsar un botón.Alguna idea?
¿Te refieres a algo así?

Código PHP:
Ver original
  1. <button class="btn <?php echo $x === $y ? 'foo' : 'bar' ?>">OK</button>

Es decir, si el valor de $x es idéntico a $y entonces se imprime "foo", en caso contrario se imprime "bar".

La condición ternaria es un abreviado de lo siguiente:
Código PHP:
Ver original
  1. <button class="btn <?php if ($x === $y) { echo 'foo'; } else { echo 'bar'; } ?>">OK</button>

Lógica simple.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 10/06/2015, 14:22
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Te refieres a algo así?

Código PHP:
Ver original
  1. <button class="btn <?php echo $x === $y ? 'foo' : 'bar' ?>">OK</button>

Es decir, si el valor de $x es idéntico a $y entonces se imprime "foo", en caso contrario se imprime "bar".

La condición ternaria es un abreviado de lo siguiente:
Código PHP:
Ver original
  1. <button class="btn <?php if ($x === $y) { echo 'foo'; } else { echo 'bar'; } ?>">OK</button>

Lógica simple.
Si lógico pero yo no quiero eso.
Quiero crear un botón en el inicio del código y mas adelante cambiarlo de color dentro de un "if".
Y lo que me comentas no se parece en nada.
  #9 (permalink)  
Antiguo 10/06/2015, 14:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Quiero crear un botón en el inicio del código y mas adelante cambiarlo de color dentro de un "if".
¿Entonces lo quieres cambiar ya en el navegador o cómo?

Porque lo que imprimes con PHP ya no lo puedes modificar en tiempo de ejecución de PHP.

Creo que tampoco te estás esforzando mucho en explicar exactamente tu problemática, lo poco que se entiende es todo lo que ya se te ha dicho.

Así que la única forma de "cambiar el estilo de un botón ya creado" es con Javascript, porque PHP no tiene facultad de "crear cosas", él sólo imprime y nada más.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 10/06/2015, 14:34
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Entonces lo quieres cambiar ya en el navegador o cómo?

Porque lo que imprimes con PHP ya no lo puedes modificar en tiempo de ejecución de PHP.

Creo que tampoco te estás esforzando mucho en explicar exactamente tu problemática, lo poco que se entiende es todo lo que ya se te ha dicho.

Así que la única forma de "cambiar el estilo de un botón ya creado" es con Javascript, porque PHP no tiene facultad de "crear cosas", él sólo imprime y nada más.

Está explicado arriba de todo y creo que bien ya que dos personas lo entendieron perfectamente.
Y ya se que se hace con javascript, de hecho puse un enlace de algo que probé pero que no me servía.
  #11 (permalink)  
Antiguo 10/06/2015, 14:36
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Cambiar estilo de un botón ya creado

OK, pero entonces será mejor que continúes el tema en el foro de JavaScript, porque como ya habrás visto, con PHP no hay nada que puedas hacer...

No puedes clavar el clavo en la pared de tu casa, y tratar de colgar el cuadro en la del tu vecino. Son entornos diferentes, PHP no hará nada en el navegador como lo que quieres.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #12 (permalink)  
Antiguo 10/06/2015, 14:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cambiar estilo de un botón ya creado

Cita:
Y ya se que se hace con javascript
Perfecto, ¿entonces por qué has preguntado en el foro de PHP?

En todo caso es tan simple como lo siguiente:
Código Javascript:
Ver original
  1. if (/* tu condición lógica */) {
  2.   $('selector').addClass('lo-que-quieras');
  3. }

Es decir, tu lógica no está obligada a conectarse a un evento.

Y bueno, tu principal problema es el siguiente:

Cita:
porque el javascript no tiene que tener un Onclick()
Si has pensado que sería la única forma entonces te hace falta pensar más.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #13 (permalink)  
Antiguo 10/06/2015, 14:39
 
Fecha de Ingreso: febrero-2015
Mensajes: 56
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Cambiar estilo de un botón ya creado

Es que yo inicialmente cree el hilo en css y me lo movieron aqui pero ya sabia que por php no podia cambiarlo

Etiquetas: boton, css, estilo
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 22:16.