rendre actif /inactif des bouton

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : rendre actif /inactif des bouton

par Shrell » 01 août 2005, 16:49

je passe mettre mon grain de sel ^^
pourquoi tu ne fais pas le test directement au moment du click au lieu de devoir recharger ta page?
genre :
<input type="radio" onClick="if(this.checked) {bouton1.disabled=true; bouton2.disabled=true;} else {bouton1.disabled=false; bouton2.disabled=false;}">

par donny » 27 juil. 2005, 13:23

en mettant un else
sa donne toujours
donc je suis aller sur l autre lien
http://www.phpfrance.com/forums/voir_sujet-6429.php
et j ai pris cette fonction

Code : Tout sélectionner

function activer(champ,checkbox) { if (document.getElementById(checkbox).checked == true) document.champ.disabled = true; else document.champ.disabled = false; }
je l appel la

Code : Tout sélectionner

<input class="bt1" type="submit" name="tab2tab1" value="" onload=" activer(tab2tab1,c)">
j ai aussi essayer ici

Code : Tout sélectionner

<body onload="Chargement();activer(tab2tab1,c);">
et ma case à cocher c se trouve ici

Code : Tout sélectionner

while($list2=@pg_fetch_array($resu2)){ ?> <tr class="white" onClick="blok(this, 'radioc<? echo $i ; ?>')"><td class="td1"><input type="radio" name="c" id="radioc<? echo $i ; ?>" value="<? echo $list2['numserie'];?>" <? if($list2['numserie']==@$_SESSION['nums']){echo " CHECKED";}?>></td> <td class="td1"><? echo $list2['type_objet']; ?></td> <td class="td1"><? echo $list2['numserie']; ?></td> <td class="td1"><? echo $list2['marque']; ?></td> <td class="td1"><? echo $list2['modele']; ?></td> <td class="td1"><? echo $list2['etat']; ?></td> </tr> <? $i=$i+1; } ?>
mais il ne se passe rien
Dans la fonction
champs correspond au nom du bouton
et checkbox au nom du bouton radio
c est bien cela

par mere-teresa » 27 juil. 2005, 11:50

Et ça donne quoi comme code HTML ? Parce que le PHP qui le produit, à la rigueur, on s'en fiche...
Conseils :
- met un else à ton if, avec un alert('pas de radio checked') tu sauras où passe le programme
- désigne mieux tes champs de formulaire que ça (voir le lien que je t'a fourni plus haut)

par ouckileou » 27 juil. 2005, 11:49

ça revient à ça ce que tu veux faire sinon : http://www.phpfrance.com/forums/voir_sujet-6429.php

par donny » 27 juil. 2005, 11:47

j ai fait un test avec la fonction disponible sur ta page mais il ne se passe rien

donc j ai mis cette fontion

Code : Tout sélectionner

function testerRadio(radio) { for (var i=0; i<radio.length;i++) { if (radio[i].checked) { alert("Système = "+radio[i].value) } } }
Je l ai appeler dans

Code : Tout sélectionner

<body onload="Chargement();testerRadio(a);">
et voila le code de mon tableau
while($list=pg_fetch_array($result)){
?>
<tr class="white" onClick="blok(this, 'radio<? echo  $i ; ?>')"><td class="td1"><input type="radio" name="a" id="radio<? echo  $i ; ?>" value="<? echo $list['numserie'];?>" <? if($list['numserie']==@$_SESSION['nums']){echo " CHECKED";}?>></td>
    <td class="td1"><? echo $list['etat']; ?></td>
    <td class="td1"><? echo $list['type_objet']; ?></td>
    <td class="td1"><? echo $list['numserie']; ?></td>
    <td class="td1"><? echo $list['marque']; ?></td>
    <td class="td1"><? echo $list['modele']; ?></td>
</tr> 
<?
$i=$i+1;
donc en theorie vu qu a chaque fois que je clique sur une case sa recharge ma page, je devrais avoir une alert avec la value de la case a cocher mais je n ai rien ?

par ouckileou » 27 juil. 2005, 11:33

Et ce que je n arrive pas à avoir c est
MaCaseEstCocher,recuperer comme quoi la case est cocher
puisque c'est toi qui les coches, suivant un test, tu le sais qu'elles sont cochées !!

tu fais

Code : Tout sélectionner

<input type="radio" <?php if ($test == "ok") echo "CHECKED"; ?>>
donc il suffit de répéter le test dans le bouton correspondant :

Code : Tout sélectionner

<input type="submit" <?php if ($test == "ok") echo "DISABLED"; ?>>
ou alors y'a un truc que j'ai pas capté :roll:

par mere-teresa » 27 juil. 2005, 11:30

Et ce que je n arrive pas à avoir c est
MaCaseEstCocher,recuperer comme quoi la case est cocher
Alors c'est du javascript mon ami :)
Je déplace ton post ....

Et d'ailleurs, :shock: j'ai le même problème :) sauf que je cherche mieux que toi :)
http://www.toutjavascript.com/savoir/savoir06_2.php3

par donny » 27 juil. 2005, 11:29

quoi ecrire c est disabled

moi je pensai faire un truc dans ce genre
<input   type="submit" name="bouton1" value="" <? if(MaCaseEstCocher){echo "disabled='disabled'";} ?>>
Et ce que je n arrive pas à avoir c est
MaCaseEstCocher,recuperer comme quoi la case est cocher

par ouckileou » 27 juil. 2005, 11:27

J ai pas trop capter le truc de la fonction?
moi je voudrais que quand un bouton radio est cocher dans un tableau alors les bouton qui ne lui sont pas utile soit inactif
laisse tomber le coup de la fonction

à partir du moment ou tu à un test qui te permet de choisir si une case est cochée ou non, pourquoi ne pas utiliser ce même test pour désactiver les boutons liés ?

sachant que tu inseres un "CHECKED" pour cocher une case, et qu'il suffit d'insérer un "DISABLED" pour désactiver un bouton, où est le problème ?

par mere-teresa » 27 juil. 2005, 11:25

Comment pourrais je faire pour rendre inactifs les boutons qui ne sont pas utilises quand un element dans un tableau est selectionné ?
Tu demandes quel test faire ou quoi écrir pour rendre inactif le bouton ?

par donny » 27 juil. 2005, 11:23

ouai c est moi qui coche les bouton radio;
J ai pas trop capter le truc de la fonction?
moi je voudrais que quand un bouton radio est cocher dans un tableau alors les bouton qui ne lui sont pas utile soit inactif

par ouckileou » 27 juil. 2005, 11:19

je me trompe ou c'est toi qui décide si la case est cochée, en affichant CHECKED suivant un test ?

donc si tu le sais, tu peux par la même occasion activer ou non le bouton

sinon tu diffères, tu coches tes cases comme tu le fais, et tu fais une fonction appelée au chargement qui grise tout ce qui tous les boutons correspondant aux checkbox cochées

j'espère que c'est juste un petit plus dans ton site et non pas le fondement de la sécurité, car si on désactive le Javascript on fait tout keskonveut sur ton site ;)

par donny » 27 juil. 2005, 11:15

ouai c est vrai,
mais le champs concerné c est un bouton, et ce bouton dois etre inactif,si la case est cocher et la case se trouve dans un tableau et la je bloque pour savoir si la case est cocher .
Car si j ai cette info, je peux mettre directement cela dans le bouton et faire comme le checked

par ouckileou » 27 juil. 2005, 11:08

bizarre tu sembles écrire une instruction javascript au milieu de nulle part, elle ne sera jamais exécutée

pourquoi ne pas faire comme pour le CHECKED ? écrire DISABLED dans le champ concerné

rendre actif /inactif des bouton

par donny » 27 juil. 2005, 11:02

salut,

Je dispose de tableaux sur ma page qui permette de transferer des elements d un tableau à un autre et ceci à l aide de bouton.
Quand un element est choisi dans un tableau un bouton radio l indique.
Comment pourrai je faire pour rendre inactif les bouton qui ne sont pas utilile quand un element dans un tableau est selectionner ?

J ai essayer de faire un truc comme cela mais sa ne donne rien
<td class="td1"><input type="radio" name="c" id="radioc<? echo  $i ; ?>" value="<? echo $list2['numserie'];?>" <? if($list2['numserie']==@$_SESSION['nums']){echo " CHECKED";echo "tab0tab2.disabled=\"disabled\" ";}?>></td> 

Merci