Welcome, Guest
Username: Password: Remember me

TOPIC: Multiple choice random order

Multiple choice random order 10 months 1 week ago #100738

  • Andrea
  • Andrea's Avatar
  • OFFLINE
  • Gold Donor
  • Posts: 33
  • Karma: 0
Hi,

I have multiple choice question and Show the items in random order.
Is is possible not to randomize the last item in the question.

If I use "Exclusive Option" the item will not be randomized, however, if clicked, all other items get deactivated, and this is not what I Need.

Thanks in advance

Andrea
The administrator has disabled public write access.

Multiple choice random order 10 months 1 week ago #100741

  • tpartner
  • tpartner's Avatar
  • OFFLINE
  • LimeSurvey Team
  • Posts: 4130
  • Thank you received: 763
  • Karma: 347
Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

LimeSurvey is open-source and run entirely by volunteers so please consider donating to support the project.
The administrator has disabled public write access.

Multiple choice random order 10 months 1 week ago #100763

  • Andrea
  • Andrea's Avatar
  • OFFLINE
  • Gold Donor
  • Posts: 33
  • Karma: 0
thank you, but not working with Limesurvey 2.0
The administrator has disabled public write access.

Multiple choice random order 10 months 1 week ago #100765

  • tpartner
  • tpartner's Avatar
  • OFFLINE
  • LimeSurvey Team
  • Posts: 4130
  • Thank you received: 763
  • Karma: 347
I just tested it in the default template of LimeSurvey 2.0 and it works fine. Perhaps you had incorrect IDs or where using another template.

Regardless, here is an updated version of the script for LS 2.0. Create the question as described in the workaround and add this script to the question source:
<script type="text/javascript" charset="utf-8">	
	$(document).ready(function() {
 
		var qID = {QID};
		var thisQuestion = $('#question'+qID);
 
		// Find the number of answers
		var ansCount = $('.answer-item', thisQuestion).length;
 
		// Place the last answer created at the end of the list
		$('.questions-list', thisQuestion).append($('.answer-item[id$="X'+qID+ansCount+'"]'));
	});
</script>
Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

LimeSurvey is open-source and run entirely by volunteers so please consider donating to support the project.
Last Edit: 10 months 1 week ago by tpartner.
The administrator has disabled public write access.

Multiple choice random order 10 months 1 week ago #100918

  • Andrea
  • Andrea's Avatar
  • OFFLINE
  • Gold Donor
  • Posts: 33
  • Karma: 0
Hi tpartner,

thank you, works fine for multiple options questions. For list radio questions I changed

$('.questions-list', thisQuestion).append($('.answer-item[id$="X'+qID+ansCount+'"]'));

to

$('.answers-list', thisQuestion).append($('.answer-item[id$="X'+qID+ansCount+'"]'));


I also managed to make my template work with the code from the Workaround by changing

$( 'div#question' + qID + ' td.answer li' ).each(function(i) {
ansCount = (i + 1);

to


$( 'div#question' + qID + ' div.answers li' ).each(function(i) {
ansCount = (i + 1);

and

$( 'input#answer' + sID + 'X' + gID + 'X' + qID + ansCount + '' ).parent().appendTo($( '#question' + qID + ' td.answer ul' ));

to

$( 'input#answer' + sID + 'X' + gID + 'X' + qID + ansCount + '' ).parent().appendTo($( '#question' + qID + ' div.answer ul' ));


Best regards
Andrea
The administrator has disabled public write access.
Moderators: ITEd
Time to create page: 0.104 seconds
Donation Image