Hide last 3 rows of an array question

Mehr
2 Wochen 2 Tage her #170752 von paulfiner
paulfiner erstellte das Thema Hide last 3 rows of an array question
I have a standard array question with 6 sub-questions that are randomised. I would like to hide the last 3 rows of the table so the respondent effectively sees 3 random sub-questions out of 6.
I'm sure the javascript for this is fairly simple but I'm struggling!

Thanks

Limesurvey v2.55

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Mehr
2 Wochen 2 Tage her - 2 Wochen 1 Tag her #170755 von tpartner
tpartner antwortete auf das Thema: Hide last 3 rows of an array question
You don't need JS for that. You can do it with sub-question relevance, counting the relevance status of other sub-questions.

[EDIT]Further testing indicates that this does not work consistently[/EDIT]

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Letzte Änderung: 2 Wochen 1 Tag her von tpartner.
Folgende Benutzer bedankten sich: DenisChenu

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Mehr
2 Wochen 1 Tag her - 2 Wochen 1 Tag her #170773 von paulfiner
paulfiner antwortete auf das Thema: Hide last 3 rows of an array question
Hi Tony,
Thanks for your reply and the sample survey. I tried this but it only ever shows the first 3 sub-question codes.
I need it to randomly show 3 of the 6 possible options - sorry if I didn't explain that originally.
Thanks
Letzte Änderung: 2 Wochen 1 Tag her von paulfiner. Begründung: spelling

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Mehr
2 Wochen 1 Tag her #170796 von paulfiner
paulfiner antwortete auf das Thema: Hide last 3 rows of an array question
In V2.55 I was only getting codes 1-3 randomized.
What would be the javascript code to hide row 4 of the table in an Array question?

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Mehr
2 Wochen 1 Tag her #170797 von tpartner
tpartner antwortete auf das Thema: Hide last 3 rows of an array question
Oh, yes, I see. I did not test thoroughly enough.

In that case, to allow for a "mandatory" setting, I would...

1) Insert a hidden (via CSS class) multiple choice question before the array with randomized sub-questions.

2) Add this script to the multiple-choice which will check the first 3 boxes:
<script type="text/javascript" charset="utf-8">
 
	$(document).on('ready pjax:scriptcomplete',function(){
 
		var thisQuestion = $('#question{QID}');
 
		// Check first 3 options (but only if page has not been visited) 
		if($('input:checkbox:checked', thisQuestion).length == 0) {
			$('input:checkbox:lt(3)', thisQuestion).each(function(i) {
				$(this).prop('checked', true);
				$(this).nextAll('input:hidden:eq(0)').val('Y');
				checkconditions(this.value, this.name, this.type);
			});
		}
    });
</script>

3) Place an array filter on the array so only rows checked in the hidden question will be shown (and relevant).

Sample survey attached:

Dateianhang:

Dateiname: limesurvey...8982.lss
Dateigröße:24 KB

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Anhang:
Folgende Benutzer bedankten sich: DenisChenu

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Mehr
2 Wochen 1 Tag her #170799 von paulfiner
paulfiner antwortete auf das Thema: Hide last 3 rows of an array question
That's great! Works perfectly.

Thanks for your help Tony.

Bitte Anmelden oder Registrieren um an der Konversation teilzunehmen.

Jetzt loslegen!

Melden Sie sich jetzt an, und erstellen Sie in wenigen Minuten Ihre erste Umfrage.

Account einrichten

Abonnieren Sie unseren Newsletter

Abonnieren Sie unseren Newsletter für alle Neuigkeiten rund um LimeSurvey
captcha