PHP - habilitar y desabilitar button

   
Vista:

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 15/09/2014 19:16:29
Buenas tardes.

Intento desabilitar un boton y lo consigo cuando el valor con el que lo comparo vale null pero no cuando está vacio.
Las primeras lineas era para ver si podia controlar cuando está vacio y si lo está por lo que muestra el mensaje del echo "vacio";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
if((trim($valores['boxes'][0]['crotal']))=="")
{
	echo "vacio";
}else
{
	echo "No vacio";
}
?>
</label>
<input name="crotal" value="<?php echo $valores['boxes'][0]['crotal']?>"
		style="width: 150px;margin-left: 83px;text-align: left;" title="Intervalo Inicio">
<button enable="<?php if(($valores['boxes'][0]['crotal']==null)||(trim($valores['boxes'][0]['crotal']))==""){ echo "false";}else{echo "true";} ?>" style="width: 20px;height: 20px;"
		onclick="javascript:irAFicha(<?php echo $valores['boxes'][0]['crotal']?>)">
	<label>Ir</label>
</button>

Si el if previo al boton se cumple bien,por que no me lo deshabilita.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

habilitar y desabilitar button

Publicado por Gonzalo (338 intervenciones) el 15/09/2014 19:38:50
tal vez pudiera ser asi.

<?php
if(($valores['boxes'][0]['crotal']==null)||(trim($valores['boxes'][0]['crotal']))=="")
{
$Enable="false";
}else
{
$Enable="true";
}
?>

<button <?php echo('enable=" '$Enable.' "'); ?> style="width: 20px;height: 20px;"

suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 15/09/2014 19:47:39
Muchas gracias por la respuesta pero no funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Gonzalo (338 intervenciones) el 15/09/2014 20:09:51
a ver si este modo funciona.

<?php

$valores['boxes'][0]['crotal']=""; // cambia este valor por ="lo que sea"

$Disabled= "";

if((trim($valores['boxes'][0]['crotal']))=="")
{
$Disabled= "Disabled";
}

?>

<button <?php echo($Disabled); ?>
>
Habilitado/Desabilitado
</button>

espero sea de ayuda, suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 16/09/2014 08:30:01
Buenos dias.

he probado haciendo esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$disable="";
$valores['boxes'][0]['crotal']=142;
if((trim($valores['boxes'][0]['crotal']))=="")
{
	$disable=true;
	echo "vacio";
}else
{
	$disable=false;
	echo "no vacio";
}
?>
 
<button disabled="<?php echo $disable;?>" style="width: 20px;height: 20px;"
		onclick="javascript:irAFicha(<?php echo $valores['boxes'][0]['crotal']?>)">
	<label>Ir</label>
</button>

Me muestra el echo "no vacio" pero el boton está desabilitado.
Y no entiendo por que.
Gracias por vuestros comentarios,saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 16/09/2014 12:44:05
Buenas de nuevo,viendo que mediante php no habia manera estoy probando por javascript que pensaba que debia ser mucho mas simple pero veo que no.
Este es el javascript,entrar entra por que me aparecen todos los alert que pongo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function habilitarIr(valor)
        {
            valorEntrada=valor;
            alert("Valor de entrada en babilitar vale="+valorEntrada);
            if(valorEntrada==0)
            {
                alert("Antes de desabilitar");
                document.frmBoxCeboArriba.btIr.disable=true;
                alert("Despues de desabilitar");
            }
            else
            {
                document.frmBoxCeboArriba.btIr.disable=false;
            }
        }

Y esta es la llamada a dicha funcion en el onload.
onload="javascript:habilitarIr(<?php if((trim($valores['boxes'][0]['crotal']))==""){echo '0';}else{echo $valores['boxes'][0]['crotal'];}?>)"

Y aqui el boton:
1
2
3
4
<button id="btIr"name="btIr" style="width: 20px;height: 20px;"
		onclick="javascript:irAFicha(<?php echo $valores['boxes'][0]['crotal']?>)">
	<label>Ir</label>
</button>

Que estoy haciendo mal por que por internet he visto que la forma,el metodo javascript,es esa

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Gonzalo (338 intervenciones) el 16/09/2014 16:44:35
bueno, veo que no revisaste el ejemplo que te pase.

bien mira el formato para deshabilitar un boton es este

<button disabled>Texto</button>

asi que el formato que estas pasando al explorador esta mal ya que escribe

<button disabled="Disabled">texto</buton>

vez la diferencia? ahi esta el primer error.

bien, dejando de lado ese boton seguimos con lo de javascript

hay 2 formas de deshabilitar el boton

1 al cargar el formato (este procedimiento es por php)
2 al momento de dar un click con el mouse en algun lado (este procedimiento es por javascript)

asi que la pregunta seria

como o cuando es que quieres que se deshabilite el boton?

suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 16/09/2014 17:18:05
Buenas Gonzalo.

En primer lugar si seguí el ejemplo que me mandaste,o eso creo :(,y no me funciona.
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$Disabled= "";
 
if((trim($valores['boxes'][0]['crotal']))=="")
{
$Disabled= "Disabled";
}
?>
<button id="btIr"name="btIr" <?php echo ($Disabled);?>style="width: 20px;height: 20px;"
		onclick="javascript:irAFicha(<?php echo $valores['boxes'][0]['crotal']?>)">
	<label>Ir</label>
</button>

El tema es que se desabilite al cargar la pagina ,cuando $valores['boxes'][0]['crotal'] valga 0 o null,y de ahí que utilice el javascript en el onload de la pagina.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Gonzalo (338 intervenciones) el 16/09/2014 17:54:54
si es al cargar la pagina entonces puedes hacerlo desde php, en mi opinion debes

1 recuperar $valores.
2 ver si hay valores
3 definir si debes habilitar o deshabilitar el boton.

no creo que necesites javascript, pero si quieres hacerlo con javascript tambien se puede.

alguien en el foro que domine javascript que nos pueda ayudar con este problema?

salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 16/09/2014 18:09:40
Buenas Gonzalo.

Eso mismo trataba de hacer mediante php,que en un principio le creí mas simple.
Pero se ve que no,que hago algo mal mas bien.

Alguna sugerencia de alguien?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

habilitar y desabilitar button

Publicado por xve (5518 intervenciones) el 16/09/2014 23:04:28
Hola Victor, es tan sencillo como te ha comentado Gonzalo... si no cumple con la condición, simple mente tienes que añadir un disabled al input, de esta manera, ya no se podrán añadir datos.

Por ejemplo, si añades esta linea a tu formulario:
1
<input type="text" name="nombre" disabled>

veras que te aparece una entrada de datos deshabilitada. Lo que dice Gonzalo, es poner el nombre "disabled" en una variable... esto te funcionara:
1
2
3
4
<?php
$miVar="Disabled";
?>
<input type="text" name="nombre" <?php echo $miVar?>>

Te tiene que funcionar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

habilitar y desabilitar button

Publicado por Victor (193 intervenciones) el 17/09/2014 11:18:49
Buenos dias a todos.
En primer lugar pedirle disculpas a Gonzalo,lo acabo de hacer y ahora si funciona(puede que al apache se le fuese la oya por que está prácticamente igual solo que sin el label Ir).
Muchas gracias a todos,es una alegría verse perdido y ver que hay gente que quiere ayudarte.

Muchas gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar