Comment je peux redéfinir la visibilité d’une champ par java

Eléphant du PHP | 92 Messages

08 mars 2010, 23:46

Bonjour,

Comment je peux redéfinir la visibilité d’une champ par javascript

Pourquoi j’en ai besoin ?

Parce que je vais faire une contrôle des champs dans un formulaire…

Voici une partie de mon code html :

Code : Tout sélectionner

<form method="post" action="action/enregistre.php" name="FormToto" id=" FormToto " onsubmit="return check()"> <table class="tableIdentification" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="tdLabel">Pr&eacute;nom<span class="rouge2">*</span></td> <td><input type="text" name="prenom" id="prenom" /> <span class="rouge1<input type="hidden" name="prenomHidden" id="prenomHidden" value="*"/><span class="rouge1"></td> </tr> </table> <p> <span class="rouge2">*</span> les champs doivent &ecirc;tre compl&eacute;t&eacute;s.</p> <p> <input type="submit" name="submit" value="Envoyer" class="bouton"/> <input type="reset" name="reset" value="Effacer" class="boutonEffacer" /> </p>
Et voici le code javascript :

Code : Tout sélectionner

function check() { if (document.FormToto.prenom.value=="") { alert("Ecrivez votre PRENOM s\'il vous plait !"); return false; } }
Que dois je ajouter, dans mon code javaScript, pour que mon imput prenomHiddent devient visible lorsque l’utilisateur ne remplis pas le champ ?

En fait il est invisible quand il est < input type="hidden"> et visible quand il est <input type="text">

Merci et bonne soirée

Mammouth du PHP | 2937 Messages

09 mars 2010, 09:38

Avec ton code, si JavaScript est désactivé, le champ prénom sera toujours caché. Le mieux est de remplacer, en dur (c'est-à-dire directement dans le code HTML), la valeur "hidden" par "text".

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

09 mars 2010, 10:37

Avec ton code, si JavaScript est désactivé, le champ prénom sera toujours caché. Le mieux est de remplacer, en dur (c'est-à-dire directement dans le code HTML), la valeur "hidden" par "text".
ça dépend de son public visé

sinon il est peut être plus simple (logique) de jouer avec les styles (display:none), quelque chose dans ce genre

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 661 Messages

09 mars 2010, 10:57

sinon, il y a aussi l'attribut disabled qui peux etre utile ;)

http://www.w3.org/TR/html401/interact/f ... f-disabled

@++

Eléphant du PHP | 92 Messages

09 mars 2010, 16:48

Merci beaucoup à vos aides,

voila la solution que je vais utiliser :

Ce serait mieux avec un DIV :
<div id="prenom" style="visibility:hidden">*</div>
Et en javascript je peux modifier le style en le passant de hidden à visible, du genre :
document.getElementById("prenom").style.visibili
ty='visible';

Est ce que c'est bon idée ?