Créer un texte à trous avec les réponses sous forme de liste déroulante ou de champ de saisie
Par défaut, les zones de saisie ou la liste, sont en dessous du texte. Voici comment procéder pour insérer les "trous" directement au bon endroit dans le texte.
Texte à trous avec listes déroulantes
Vous trouverez en pièce jointe à cet article un fichier texte avec le code à copier-coller dans un composant exercice simple de type "Blank Common Problem".
Voici en détail comment procéder. :
Pour créer un exercice de ce type, créez un composant "Blank Common Problem" et copiez-collez l'exemple d'exercice.
Astuce : il n'est pas nécessaire de passer en éditeur avancé, mais l'éditeur avancé vous propose la coloration syntaxique qui facilite la lecture.Conservez bien la balise
problem.Conservez bien les balises
scriptsans en changer le contenu.Pour chaque morceau de texte ayant un trou, il faut les intégrer dans une balise
optionresponse. Conservez le paramètreinline="1".Puis mettez les textes sans trous dans des balises de paragraphes
p.Mettez les trous dans des balises
optioninput. Attention donc à bien fermer la balise p juste avant la baliseoptioninput. Voici comment paramétrer la baliseoptioninput.L'attribut
labelest le titre de l'objet "liste déroulante", qu'il est important de renseigner pour des questions d'accessibilité, en remettant entre guillemets un extrait de la phrase et des underscore à la place du trou concerné.Les mots acceptés sont définis par l'attribut
options="('mot1','mot2','mot3')".La bonne réponse est définie par l'attribut
correct="mot3".
Nota : il n'est pas possible d'avoir plusieurs bonnes réponses.Conservez l'attribut
inline="1".
Puis fermez la balise
optioninput.Si la phrase continue après votre "trou" (liste déroulante), rouvrez un paragraphe
p, en conservant l'attributstyle="display: inline"afin qu'il se mette à la suite de la liste déroulante et non à la ligne.Puis fermez la balise
optionresponse.Procédez ainsi pour chaque trou.
En dessous, dans la balise
divdont vous conserverez les attributsclass="custom_answer"style="display: none", remettez votre texte complet, sous forme de paragraphes, avec les bons termes en gras vert avec une baliseb style="color:green". Ce sera l'affichage de la solution lorsque les apprenants cliquent sur le bouton "Afficher la réponse". A la fin de votre solution, conservez la balise fermante/div.Conservez ensuite la balise fermante
/problemindiquant la fin de l'exercice.
Exemple d'intégration d'un texte à trous avec listes déroulantes
Modèle téléchargeable
Texte à trous avec champ de saisie au clavier
Vous trouverez en pièce jointe à cet article un fichier texte avec le code à copier-coller dans un composant exercice simple de type "Blank Common Problem". Voici en détail comment procéder. :
Pour créer un exercice de ce type, créez un composant "Blank Common Problem" et copiez-collez l'exemple d'exercice.
Astuce : il n'est pas nécessaire de passer en éditeur avancé, mais l'éditeur avancé vous propose la coloration syntaxique qui facilite la lecture.Conservez bien la balise
problem.Conservez bien les balises script sans en changer le contenu.
Insérez votre texte dans des balises de paragraphe
pen conservant l'attributstyle="display: inline"si vous voulez que le texte continue de s'afficher à la ligne après les champs de saisie. Vous pouvez utiliser les balisesbrsi vous voulez faire un retour à la ligne sans changer de paragraphe.Chaque "trou" doit être intégré dans une balise
stringresponse. Voici comment paramétrer cette balise.Conservez le paramètre
inline="1".La bonne réponse se paramètre avec l'attribut
answer="La bonne réponse".Préciser avec l'attribut
type="ci"outype="cs"si vous voulez que la bonne réponse soit sensible à la casse (cs) ou pas (ci).
Nota : il n'est pas possible de définir plusieurs réponses acceptées, à moins d'essayer de jouer avec les "expressions régulières" (voir le support de l'atelier "Exercices interactifs"). Par contre vous pouvez accepter que la réponse soit juste dès lors que le champ n'est pas laissé vide, en indiquantanswer="." type="ci regexp".
Insérez une balise
textlineen conservant l'attributinline="1". Voici comment paramétrer cette balise.Paramétrez l'attribut
label="xx_xxx", en reprenant une partie du texte et en remplaçant les trous par des underscore.Indiquez la largeur du champ de saisie en nombre de caractères grâce à l'attribut
size="9"où vous définissez le chiffre.
Nota : cela n'est pas une limitation du nombre de caractères saisis mais bien l'indication de la largeur de l'objet champ de saisie.
Fermez la balise
stringresponse.Procédez ainsi pour chaque paragraphe, chaque trou.
Pour afficher la solution, créez un paragraphe
pavec l'attributclass="custom_answer"et positionnez-le en bas, avant la balise de fermeture du problème/problemou en l'insérant aux endroits opportuns entre les paragraphes d'exercice, comme dans le présent exemple. Mettez en gras vert les bonnes réponses à l'aide de la baliseb style="color:green".Conservez enfin la balise fermante
/problemindiquant la fin de l'exercice.
Exemple d'intégration d'un texte à trous avec champs de saisie