Bonjour,
Je voudrais pouvoir n'imprimer que les champs (input) répondus d'un formulaire HTML. Le questionnaire contient quelques centaines de questions d'où l'idée d'éliminer les informations inutiles. Les champs input se distribuent soit :
dans des blocs
ou simplement des paragraphes <p> avec des questions.
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <div> <h3>(le titre de la section)</h3> <label><input radio ...>
ou dans des listes non ordonnées tel que
ou des input text
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <ul> <h3>(le titre de la section)</h3> <li><label for="f267">bla bla bla</label> <input type="checkbox" id="f267" name="f267" ..> <li><label for="f268">bla bla bla</label> <input type="checkbox" id="f268" name="f268" ..>
etc.
Si l'utilisateur ne répond pas à la question f268, il ne faut pas imprimer le champs input ni le label f268. L'élément <li> correspondant devrait devenir display:none pour le media print. L'impression se fait par le navigateur, pas du côté serveur.
Dans le meilleur des mondes, lorsqu'aucun élément <li> d'une liste <ul> n'est répondu, il faudrait cacher la liste (l'élément <ul>) si possible. Évidemment, après impression, si l'utilisateur modifie une réponse dans le questionnaire, la réimpression devra tenir compte des changements.
Je n'ai pas accès au code qui génère le questionnaire sur le serveur mais je peux modifier le CSS ou ajouter un JS. Il n'y a aucun moyen de pouvoir faire ce traitement en CSS, c'est pourquoi je m'adresse à ceux et celles qui connaissent bien le JS.
Partager