Champs cacher,grisé

Eléphant du PHP | 406 Messages

12 mai 2005, 08:21

salut,


Je voudrais savoir si il est possible de rendre invisible un bouton option ,
en faite je m explique,j ai un code javascript qui me permet quand je clique sur une ligne que cette ligne change de couleur par rapport au autres(et si je clique sur une autre ligne alors cette retrouve sa couleur d origine et c est cette ligne qui change de couleur).
Et j ai plusieurs bouton qui me permette d ouvrir des fenetre en fonction des donnée contenu dans la ligne.
Mais comment savoir qu elle ligne est selectionner ?
Je pensai mettre un bouton option dans chaque ligne et comme sa,sa me permettra de savoir qu elle ligne est selectionner quand je cliquerai sur le bouton ?c est bon ?

Et est t il possible de rendre un lien grisé,c est à dire qu il apparait mais tant qu une condition n ai pas remplite on ne peux pas cliquer dessus ?

Merci

Eléphant du PHP | 357 Messages

12 mai 2005, 10:10

oui c'est tout a fait paussible enfin je pense donne nous un bout de ton code ca pourait aider

Eléphant du PHP | 406 Messages

12 mai 2005, 10:43

en faite j ai ce debut de code
quand on clique sur une ligne sa la selectionne, mais je vois pas trop comment faire en sorte pour que quand une ligne est selectionné alors le bouton option est mis a checked,et donc par la suite pouvoir recuperer cela qui permettra d ouvrir une nouvelle fenetre à l aide de bouton different avec les donnée contenu dans la ligne
<html> 
<head> 
<style> 
.red {background-color:white} 
.blue {background-color:blue} 
.black{background-color:black} 
.tab{cursor:crosshair }
</style> 

<script> 
var lastTr; 




function blok(objet){ 
if(lastTr)lastTr.className="red" 
objet.className="blue" 
lastTr=objet; 
} 

</script> 
</head> 
<body> 
<?php 
echo'<table width="70%" border="1">'; 
echo'<tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="oui"></td><td>maison1</td><td>bleu</td></tr>'; 
echo'<tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="nom"></td><td>maison2</td><td>jaune</td></tr>'; 
echo '</table>';

?> 
</body> 
</html>
[/code]

Mammouth du PHP | 983 Messages

12 mai 2005, 10:56

CA doit etre possible avec du javascript et dom.
Regarde du coté de la proprité display: Ici

Eléphant du PHP | 406 Messages

12 mai 2005, 11:05

c est en english

Eléphant du PHP | 357 Messages

12 mai 2005, 11:08

Toutefois je n ai pas lu tout ton code mais je pense que Rami t a donner un bon lien pour que tu vois mais je voudrai te faire deux remarque sur ton code :?
1- quand tu definis un style dans une page (html ou php ) precise le type
exemple
<style type="text/css">

2- quand le php n'est pas necessaire ne le met pas car ca "encombre" ton serveur
exemple:
echo'<table width="70%" border="1">';
echo'<tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="oui"></td><td>maison1</td><td>bleu</td></tr>';
echo'<tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="nom"></td><td>maison2</td><td>jaune</td></tr>';
echo '</table>';
peu tout aussi bien etre remplacé par du html:

Code : Tout sélectionner

<table width="70%" border="1"> <tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="oui"></td><td>maison1</td><td>bleu</td></tr> <tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="nom"></td><td>maison2</td><td>jaune</td></tr> </table>
pour ce qui est de ta question regarde du coter de l'option "onclick"
exemple:
onclick="javascript:block(objet)"
c'est quelque chose dans le genre.

Eléphant du PHP | 357 Messages

12 mai 2005, 11:09

oups je viens de lire ton code tu l avais effectivement testé :oops: désolé
toutefois pour un formulaire:
code qq chose dans le genre:

Code : Tout sélectionner

<form method="get" name="MyForm" action="#" onsubmit="return ck()" target="_blank"> <div style="position:absolute; left: 2em; top: 23em;"> <input type="radio" name="*" value="XX" onClick="javascript:block(this);/> </div> <div style="position:absolute; left:34.5em; top:16em;"> <input type="radio" name="*" value="XX" onClick="javascript:block(this);" /> </div> </form>
pour récuperer tes valeurs ca se fait grace a un $_GET puisque la méthode ici que j ai choisi est GET.
je t invite a regarder sur :
http://www.siteduzero.com
la méthode pour faire un formulaire
Modifié en dernier par seayoung le 12 mai 2005, 11:14, modifié 1 fois.

Mammouth du PHP | 983 Messages

12 mai 2005, 11:14

c est en english
Tu veux pas non plus qu'on te donne le code a chaque probleme que tu rencontres... Le meilleur moyen de progresser de chercher aussi par soi-meme. Si tu ne comprends rien à l'anglais, va dans google et cherche dom+display sur les sites francophones...

Eléphant du PHP | 406 Messages

12 mai 2005, 11:41

moi ce que je voulais c est juste quand on clique sur la ligne,que le bouton radio se mette a checked e que je puisse recuperer ce qu il y a dans le value du bouton radio

Eléphant du PHP | 357 Messages

12 mai 2005, 12:22

relis le post que je t ai mis un pe plus haut ca devrai aller et je t ai mis en plus un lien vers un site explicatif :wink:

Eléphant du PHP | 406 Messages

12 mai 2005, 16:27

je cherche depuis t a l heure
tu serai comment recuperer la valeur contenu dans le value d un bouton radio ?

Eléphant du PHP | 406 Messages

12 mai 2005, 17:00

J ai essayer de faire un truc pour essayer de recupere la valeur contenu dans le value quand on clique sur un bouton mais sa ne fonctionne ,sa m indique bien que la bouton radio à été cocher mais sa donne pas la bonne valeur pour le value sa m affiche toujours 5

Code : Tout sélectionner

<html> <head> <style> .red {background-color:white} .blue {background-color:blue} .black{background-color:black} .tab{cursor:crosshair } .option{checked:checked} </style> <script> var lastTr; function blok(objet){ objet.className="option" if(lastTr)lastTr.className="red" objet.className="blue" lastTr=objet; } </script> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post"> <?php echo'<table width="70%" border="1">'; for($i=1;$i<5;$i++){ echo'<tr class="white" onClick="blok(this)"><td><input type="radio" name="a" value="'.$i.'"></td><td>'.$i.'</td><td>bleu</td></tr>'; } echo '</table>'; if(isset($_POST['a'])){ echo 'ok'.$i; } ?> <input type="submit" name="ok" value="ok"> </form> </body> </html>

Eléphant du PHP | 406 Messages

13 mai 2005, 08:56

pour la value c est bon,et je voulais savoir comment faire pour recuperer la valeur d une variable php dans du code javascript ?

Invité
Invité n'ayant pas de compte PHPfrance

13 mai 2005, 10:11

Ben je pense que tu n'as qu'a déclarer un paramètre supplémentaire à ta fonction javascript, et quand tu fais appel à ta fonction, tu mets en paramètre ta variable php de cette façon:
"javascript:fonction('<? echo $var1 ?>', '<? echo $var2 ?>', 'etc...')" :)

Eléphant du PHP | 406 Messages

13 mai 2005, 10:34

en faite c est bon j ai reussi, je met le code pour voir ce que vous en penser et je voudrais savoir quand j ouvre ma fenetre popup, dans son url il y aura un identifiant et je vais le recuperer avec $_get et ensuite executer une requete pour avoir les meme donnée que sur la ligne qui a été selectionner,et donc ces donnée je vais les modifier et j aurai aimé savoir si je pouvais rafraichir mon tableau avec ces donnée modifier dans la popup,je sais pas si j ai été clair
<html>
<head>
<style>
.red {background-color:white}
.blue {background-color:blue}
.black{background-color:black}
.tab{cursor:crosshair }
.option{checked:checked}
</style>

<script>
var lastTr;




function blok(objet, id_objet){
objet.className="option"
if(lastTr)lastTr.className="red"
objet.className="blue"
lastTr=objet;

document.getElementById(id_objet).checked = true;
}

function ouvrirFenetre(id,url){ 
var URL =  url + "?id=" + id ; 
window.open(URL,"PopUp",'width=500,height=350,location=yes,status=no,toolbar=no,scrollbars=no');


} 




</script>
</head>
<body>

<?php  
if (!empty($_POST)) { 
	$id=@$_POST['a'];
	 
    if (isset($_POST['maj'])) { 
      echo '<script>ouvrirFenetre('.$id.',"popeffet.php")</script>'; 
       //echo 'ok'; 
 } elseif (isset($_POST['change'])) { 
        //echo 'no';
	echo '<script>ouvrirFenetre('.$id.',"popeffet2.php")</script>';  
    } elseif (isset($_POST['modif'])) { 
        // par défaut, c'est le bouton 1, même si on ne clique pas/ 
        //echo 'okno'; 
	echo '<script>ouvrirFenetre('.$id.',"popeffet3.php")</script>'; 
    } 
   
} 



?>














<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">

<?php

echo'<table width="70%" border="1">';
for($i=1;$i<5;$i++){

echo'<tr class="white" onClick="blok(this,\'radio' . $i . '\')"><td><input type="radio" id="radio' . $i . '" name="a" value="'.$i.'"></td><td>'.$i.'</td><td>bleu</td></tr>';
}

echo '</table>';


?>

<input type="submit" name="maj" value="MAJ">
<input type="submit" name="change" value="CHANGER">
<input type="submit" name="modif" value="MODIFIER">
</form>

</body>
</html>