[Quiz] - Question de composition avec tableau en modèle de réponse

[Quiz] - Question de composition avec tableau en modèle de réponse

par Olivier Valentin,
Nombre de réponses : 2
Avatar Développeurs de plugins Avatar Moodleurs particulièrement utiles

Bonjour,

j'ai rencontré un cas de figure avec la question de composition, que je retranscris ici. Si quelqu'un arrive à reproduire cette situation pour confirmer ou infirmer ce fonctionnement, je suis intéressé par un retour.

Version de Moodle : 3.5.8+
Template : Essential

Un enseignant a créé un quiz avec une question de composition, en utilisant un modèle de réponse pour "guider" la saisie de ses étudiants. Il s'agissait d'une série de mots à traduire ; le modèle de réponse se présentait sous la forme d'un tableau comme dans la capture ci-dessous :

Fig. 1 : Modèle de réponse initial


On est bien d'accord : il aurait mieux valu des questions de type réponse courte ou autre... 😕

Bref.

L'enseignant m'a recontacté : ses étudiants assurent tous avoir répondu à cette question, mais lorsqu'il veut noter manuellement cette question, aucune réponse n'a été enregistrée ! Après un tour dans la table mdl_question_attemps, les réponses sont effectivement vides.

J'ai découvert la raison : cet incident concerne l'utilisation d'un tableau.
Lorsqu'on insère un tableau, dans l'interface de création, on remarque l'option "Définir les entêtes". J'étais depuis le départ intrigué par le fait que le texte du tableau était en gras alors qu'aucune mise en page n'avait été effectuée (voir fig. 1) : c'est parce que, dans le codage HTML, cette première ligne est définie comme entête (balise thead), contenant les intitulés de colonne.

Fig. 2 : Interface de création d'un tableau



Au moment de répondre au quiz, les étudiants ont donc tapé directement leurs réponses à coté des indications de l'enseignant, de cette manière :

Fig. 3 : Saisie de la question de composition dans un quiz


En réalité, c'est comme s'ils avaient modifié les intitulés de colonne, qui ont définis dans le modèle de réponse initial (voir figure 1) ! Résultat, rien n'a été enregistré comme réponse.

En gros, si on veut utiliser un tableau comme modèle de réponse, il faut surtout qu'une ligne (ou une colonne) soit expressément prévue pour saisir la réponse, sinon on peut avoir de vilaine surprise. Il aurait donc fallu que le modèle ressemble à ceci :

Fig. 4 : Tableau de réponse correct


Avec cette version, les réponses sont saisies dans une ligne à part, et tout fonctionne correctement à l'enregistrement.

Ce n'est pas un bug à proprement parler selon moi ; mais méfiance tout de même... Qu'en pensez-vous ?

Olivier

Moyenne des évaluations Utile (1)
En réponse à Olivier Valentin

Re: [Quiz] - Question de composition avec tableau en modèle de réponse

par Olivier Valentin,
Avatar Développeurs de plugins Avatar Moodleurs particulièrement utiles

Petite erreur sur la figure 1 de mon message initial : voici la bonne capture. Le tableau proposé en modèle de réponse ne doit comporter qu'une seule ligne si l'on veut reproduire l'erreur, contrairement à la capture précédente...


En réponse à Olivier Valentin

Re: [Quiz] - Question de composition avec tableau en modèle de réponse

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Bonsoir Valentin,

Je pense que l'erreur vient de la conjonction de deux choses : le code HTML qu'insère l'éditeur Atto et le fait qu'on est dans une composition.

Pour un tableau avec une seule rangée, Atto code cette première ligne avec des balises <thead> et </thead>, puis viennent les balises <tbody> et </tbody> qui ne renferment rien. Dans une étiquette, on pourra enregistrer et obtenir le tableau avec la seule ligne. Mais dans un article de blog ou dans une composition, ce ne sera pas enregistré.

Pas de problème si le professeur utilise l'éditeur TinyMCE pour construire le modèle de tableau, car dès la première rangée, l'éditeur place les balises <tbody> et </tbody> qui renferment du texte.

  • Avec Atto :
<table>
    <thead>
        <tr>
            <th scope="col" style="border-width: 1px; border-style: dotted;">Réponse 1 : AAA&nbsp; <br></th>
            <th scope="col" style="border-width: 1px; border-style: dotted;">Réponse 2 : BBB&nbsp; <br></th>
            <th scope="col" style="border-width: 1px; border-style: dotted;">Réponse 3 : CCC&nbsp; <br></th>
        </tr>
    </thead>
    <tbody>
    </tbody>
</table>
  • Avec TinyMCE :
<table border="1">
<tbody>
<tr>
<td>Réponse 1 : AAA&nbsp;</td>
<td>Réponse 2 : BBB&nbsp;</td>
<td>Réponse : CCC&nbsp;</td>
</tr>
</tbody>
</table>
Une remarque : si l'étudiant n'apporte aucune modification au modèle du professeur, et s'il enregistre ainsi, le statut de la question sera "Non répondue" et il obtiendra une page blanche en relecture.

Christian