Cacher un groupe de questions si l'autre est validé.

More
2 years 8 months ago #118049 by Antho
Antho created the topic: Cacher un groupe de questions si l'autre est validé.
Bonjour bonjour !

J'aurais besoin d'un petit peu d'aide s'il vous plaît =) !

Je crée en ce moment un questionnaire, et j'ai créé deux groupes de questions bien distincts.
J'ai utilisé les groupes aléatoires pour tomber sur l'un ou l'autre aléatoirement à chaque début de questionnaire, puis j'ai aussi utilisé l'outil aléatoire dans mes groupes pour mes questions.

Bref, mon problème se situe dans le fait que je n'arrive pas à trouver comment faire pour que, si l'un de mes groupe de questions est choisi en premier en aléatoire, l'autre ne se montre pas après. Je pense qu'il faut utiliser le filtre conditionnel des groupes de questions, mais je n'arrive pas à réellement comprendre comment ça marche... J'essayais de trouer une formule pour dire que si l'autre groupe de questions a été validé, il ne faut pas montrer celui-ci, mais toutes mes démarches n'amènent à rien aha =) !

J'espère que j'ai réussi à donner assez d'infos !

Merci d'avance =D !

Please Log in to join the conversation.

More
2 years 8 months ago #118051 by Nickko
Nickko replied the topic: Cacher un groupe de questions si l'autre est validé.
Aléatoire = on modifie l'ordre.

Dans ton cas, il aurait fallu faire 3 groupes, le premier avec une fonction JS aléatoire et en fonction de ce résultat, on affiche l'un ou l'autre des groupes en utilisant les conditions.

Dans ton cas, pour ne pas tout modifier, j'ai bien une idée peut-être est-ce un peu tordu et le gestionnaire de condition ne te laissera pas faire, il faudra taper l'équation à la main sans doute.

Je vais d'abord t'expliquer mon idée en langage humain et ensuite je vais essayer de te guider pour la mettre en place mais je ne te promet pas que ça marche, je n'ai jamais eu à faire ça.

1. l'idée
On conserve tes groupes aléatoires
L'idée serait de mettre une condition sur le groupe tout entier et non sur une question.

Il faudrait faire afficher le groupe 2 que si aucune réponse n'a été choisis dans le groupe 1 et inversement.

Ainsi, si le groupe 1 s'est affiché le premier, le groupe 2 ne s'affichera pas et inversement.

Cela suppose que la première question de chaque groupe soit obligatoire, si ce n'est pas le cas, remplace la question 1 de chaque groupe dans mon raisonnement par n'importe quelle autre question du moment qu'elle est obligatoire.

Comprends-tu le principe ?

2. mise en oeuvre
Quand tu es au niveau d'un groupe, tu dois voir un champ "équation du filtre conditionnel" c'est ici qu'il faudra écrire ton équation "d'affichage".

Maintenant, j'avoue que je ne suis pas à l'aise avec l'écriture de tels équations.

Donc voici comment je m'y prends quand je dois faire ça.

Je vais dans la gestion des équations et je créé une condition comme je veux pour une question quelconque.

J'enregistre, je vais sur la question et je copie ce qui apparait dans le champ "équation du filtre conditionnel" de la question et je le colle dans celui du groupe.

Ensuite, je n'oublie pas de d'effacer la condition au niveau de la question en passant de nouveau par le gestionnaire de conditions.

Ensuite, je copie l'équation dans le champ "équation du filtre conditionnel" et je la modifie à la mains pour qu'elle corresponde au second cas.

Si tu veux on peut y aller pas à pas, tu me dis ce que tu fais, tu me copie-colle le résultat et je te dis précisément quoi faire pour l'étape suivante.

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
2 years 8 months ago - 2 years 8 months ago #118052 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Merci pour ta réponse !

C'est à peu près l'approche que j'avais essayé d'avoir à un moment, mais le souci c'est que la condition en elle-même est, "montrer la question si :", et là je suis obligé d'indiquer une valeur, inférieure, égale, ou supérieure, mais je ne vois pas comment indiquer "si la question n'est pas présente". De plus, toutes mes questions sont des valeurs comprises entre 1 et 9 car j'utilise un curseur.

A partir de là, il faudrait plus une fonction comme "not shown" ou "not answered" plutôt que par rapport à une valeur. Là, je viens d'essayer en mettant >= 10, en pensant donc que mon groupe allait se montrer si la valeur avait été à un moment >10 ( ce qui est possible car c'est compris entre 1 et 9), sauf que je n'avais pas prévu que cela allait me créer une double annulation, ce qui fait qu'aucun groupe n'a été montré aha =) !

J'étais donc parti sur une formule de ce type : ((P100et0_SQ001.NAOK >= "10"))
En mettant cette condition dans mon filtre de l'autre groupe.

Y a-t-il une possibilité d'inverser la condition ? Si la réponse à la question est ça, alors ne pas montrer cette question ?

En effet, à partir de là, je pourrais dire, si ma valeur à une question d'un groupe est <= à 10, alors ne pas montrer l'autre groupe.
Last Edit: 2 years 8 months ago by Antho. Reason: More infos.

Please Log in to join the conversation.

More
2 years 8 months ago #118053 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
Salut,
Tu trouveras ici une approche plus facile mais un peu différente car ce n'est plus un affichage d'un groupe ou de l'autre de manière aléatoire et exclusive, mais chaque groupe s'affiche en alternance en fonction de l'ID du répondant, à savoir s'il s'agit d'un nombre pair ou impair...en clair le groupe affiché change à chaque fois et à la fin de l'enquête, tu auras du 50/50 d'affichage, si tu as eu un nombre pair de réponses...

Pour tester, il faut que l'enquête soit activée ( car sinon pas de {SAVEDID} )
.

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

Please Log in to join the conversation.

More
2 years 8 months ago - 2 years 8 months ago #118055 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Merci beaucoup =D !

Donc je dois juste inscrire une équation dans le filtre d'un groupe, et l'autre équation dans celui de l'autre groupe ?

C'est parfait comme technique ça =) !

Après essai avec activation, mes deux groupes sont passés directement (c'est-à-dire qu'ils n'apparaissent pas dans le questionnaire), est-ce que cela a à voir avec le fait que mes réponses soient anonymisées ?

Je viens d'aller vérifier, j'ai bien un chiffre pour ID à chaque fois pourtant...
Last Edit: 2 years 8 months ago by Antho.

Please Log in to join the conversation.

More
2 years 8 months ago - 2 years 8 months ago #118056 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
Oups! celà me revient et je crois savoir pourquoi celà ne te fonctionne pas: il faut qu'il existe déjà un autre groupe visible (relevance=1) avant les 2 autres (sûrement car il faut poster le {SAVEDID} )...
Si celà ne correspond pas à la configuration de ton enquête on t'aidera à trouver autre chose ;)

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)
Attachments:
Last Edit: 2 years 8 months ago by Ben_V.

Please Log in to join the conversation.

More
2 years 8 months ago #118057 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Je pouvais toujours chercher alors tiens =P !

Mon enquête commence bel et bien par l'un des deux groupes, c'est bien dommage, l'idée de cette fonction me plaisait bien !

Please Log in to join the conversation.

More
2 years 8 months ago - 2 years 8 months ago #118058 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
Bon il y a tjrs la possibilité de créer un "faux-vrai" premier groupe:

1) créer un groupe
2) créer une question texte libre o autre
3) coller un auto-submit:
<script type="text/javascript">
$(document).ready(function() {
  $('body').hide()
  document.limesurvey.submit();
});
</script>

Reprend le test que je t'ai déjà joint et colle le dans la toute première question ;)

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)
Last Edit: 2 years 8 months ago by Ben_V.

Please Log in to join the conversation.

More
2 years 8 months ago - 2 years 8 months ago #118059 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Alors, après essai, ça ne fonctionne pas, et quand je retourne dans ma première question, il m'affiche ça :


$(document).ready(function() {
$('body').hide()
document.limesurvey.submit();
});

A chaque actualisation avec le reste du script que tu m'as donné, il me l'enlève à chaque fois =/.
Pourtant, c'est bien dans ma première question comme tu me l'as dit.

EDIT :

Finalement, ça s'affiche aha, mais ça me met un beau message d'erreur assez long :
"<script type="text/javascript">
$(document).ready(function() < / span > $ < spanstyle="font-size: 1em; font-family: inherit; color: rgb(0, 153, 0);" > ( < / span > < spanstyle="font-size: 1em; font-family: inherit; color: rgb(0, 0, 255);" > ...... et ainsi de suite.

Avec span, $ et style en rouge.
Last Edit: 2 years 8 months ago by Antho.

Please Log in to join the conversation.

More
2 years 8 months ago #118060 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
Désactiver la protection XSS ;)
Paramètres généraux de l'installation (barre de menu principale) > Onglet securité
Changer le curseur "Filter HTML for XSS:" pour le mettre sur non

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

Please Log in to join the conversation.

More
2 years 8 months ago #118061 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
J'attache un exemple avec un 1er groupe auto-submit; Il y a plus qu'à activer... ;)

File Attachment:

File Name: pair_impair.lss
File Size:14 KB

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)
Attachments:

Please Log in to join the conversation.

More
2 years 8 months ago #118062 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Décidément,... Je crois que mon administrateur ne m'a point donné accès à ce réglage =P !

Please Log in to join the conversation.

More
2 years 8 months ago #118063 by Ben_V
Ben_V replied the topic: Cacher un groupe de questions si l'autre est validé.
Dans ce cas c'est impossible d'ajouter du javascript!

De toutes les façons, il y a sûrement une solution moins tordue que celle-ci...
Je ne peux pas trop hélas t'aider plus, car je n'utilise jamais la randomnisation, mais je suis sûr que Nickko ou Denis vont t'apporter des éléments de réponses, car ça paraît être une problématique plutôt justifiée et peut-être courante...

A suivre donc...

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

Please Log in to join the conversation.

More
2 years 8 months ago #118064 by Antho
Antho replied the topic: Cacher un groupe de questions si l'autre est validé.
Okay okay, merci beaucoup pour ton aide =D !

J'attends de nouveaux bons samaritains alors aha !

Please Log in to join the conversation.

More
1 year 9 months ago #130527 by ledoux
ledoux replied the topic: Cacher un groupe de questions si l'autre est validé.
Bonjour
Je suis jeune pratiquant sur Lime (je suis expérimenté sur d'autres plateformes, plus assistées). Je ne connais pas le code nécessaire.

J'ai le problème similaire. Je souhaite que le questionnaire soit le même pour tous les répondants, puis 1 page du questionnaire présente plusieurs versions.
Chaque version de cette page est présentée de manière aléatoire à un sous-groupe de l'échantillon = pour fournir une information différente à chaque sous-groupe (qui doivent etre de taille relativement proche).

Avez-vous trouvé une solution au post précédent sur le sujet ? Doit-on coder autant qu'il était proposé ?

En vous remerciant !!

New user of LS but with the will to contribute to this great community !

Please Log in to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!