Afficher un champ dans un formulaire en fonction de la valeur du choix d'un champ précédent (Liste ou bouton radio)

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 : Afficher un champ dans un formulaire en fonction de la valeur du choix d'un champ précédent (Liste ou bouton radio)

Re: Afficher un champ dans un formulaire en fonction de la valeur du choix d'un champ précédent (Liste ou bouton radio)

par Patriboom » 22 janv. 2016, 02:19

« Je souhaiterai afficher le champ num_tva_intra que quand le champ asuj_tva est Oui »

Ce serait en javascript le plus simple:
Tu affiches le boutons de toutes façons, mais tu caches ou rends visible la div qui le contient selon le résultat obtenu dans le boutons précédant.

<div class="controls" onclick="MaFonction();"><?php echo $this->form->getInput('asuj_tva'); ?></div>

<div class="control-group" style="visibility: hidden;" id="AfficheTvaOuNon">
<div class="control-label"><?php echo $this->form->getLabel('num_tva_intra'); ?></div>
<div class="controls"><?php echo $this->form->getInput('num_tva_intra'); ?></div>
</div>

<script>
function MaFonction() {
var etat = 'hidden';
if (document.getElementById('asuj_tva').value == 'Oui') { etat = 'visible'; }
document.getElementById('AfficheTvaOuNon').style.visibility = etat;
}
</script>

Re: Afficher un champ dans un formulaire en fonction de la valeur du choix d'un champ précédent (Liste ou bouton radio)

par ynx » 21 janv. 2016, 17:30

Salut,

Une solution assez simple serait d'utiliser un peu de javascript pour effectuer ce traitement, mais il serait plus facile de te guider si nous pouvions voir les balises input.
En effet ton extrait de code html contient du code php, c'est ce code php qui va être remplacé par les input html lors de l'affichage de la page. Pour nous montrer uniquement le code html, tu peux afficher ta page dans un navigateur et récupérer le code source html de la page (clic droit -> Code source de la page).

Peux tu stp nous montrer le même extrait de code mais en version html (depuis le code source de la page affichée dans le navigateur) ?

Bonne journée

Afficher un champ dans un formulaire en fonction de la valeur du choix d'un champ précédent (Liste ou bouton radio)

par Eric Agrepe » 21 janv. 2016, 12:35

Bonjour,
D'abord je précise que je suis très débutant.
J'essaie de réaliser un formulaire.
Je souhaiterai savoir comment faire pour afficher un champ en fonction de l'état d'un précédent.

Voici un extrait du code que j'ai préparé, mon formulaire s'affiche correctement: ( mais dans ce morceau de code je ne vois pas mes boutons radio ?)
Le control 'Assuj_tva' peut avoir un état Oui ou Non

<div class="control-group">
<div class="control-label"><?php echo $this->form->getLabel('asuj_tva'); ?></div>
<div class="controls"><?php echo $this->form->getInput('asuj_tva'); ?></div>
</div>
<div class="control-group">
<div class="control-label"><?php echo $this->form->getLabel('num_tva_intra'); ?></div>
<div class="controls"><?php echo $this->form->getInput('num_tva_intra'); ?></div>
</div>

Je souhaiterai afficher le champ num_tva_intra que quand le champ asuj_tva est Oui

Cordialement.
Eric