Array dual scale - make one answer scale not mandatory

More
3 years 9 months ago - 3 years 9 months ago #103929 by firzen
firzen created the topic: Array dual scale - make one answer scale not mandatory
Is it possible to make one of the answer scales non mandatory? I have a 1 to 5 scale and the other scale will have a single optional answer option in it. I originally had a not applicable answer option in the second scale but users found it annoying to select two options for the 24 sub-questions
Last Edit: 3 years 9 months ago by firzen.

Please Log in to join the conversation.

More
3 years 9 months ago #103944 by tpartner
tpartner replied the topic: Array dual scale - make one answer scale not mandatory
You can't really make one answer non-mandatory and the problem with only providing one option for that scale is that if respondents mistakenly click it, they cannot un-click it.

I would keep the "N/A" option in the second scale and insert some JavaScript to click that option by default.

Add this script to the source of the array:

<script type="text/javascript" charset="utf-8">	
 
	$(document).ready(function() {
 
		// Identify this question
		var thisQuestion = $('#question{QID}');
 
		// Identify the second scale answers
		$('.answer-item[class^="answer_cell_2"]', thisQuestion).addClass('scale-2-item');
 
		// Set a default answer for the second scale
		$('.answers-list', thisQuestion).each(function(i) {
			if($('.scale-2-item input[type="radio"]:checked', this).length == 0) {
				$('.scale-2-item input[type="radio"]:last', this).click();
			}
		});
	});
 
</script>

.

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

Please Log in to join the conversation.

More
3 years 9 months ago #103982 by firzen
firzen replied the topic: Array dual scale - make one answer scale not mandatory
Thanks for this, but i can't seem to get the script working. Where exactly do i place the script? i tried putting it inside the not applicable answer option source and it didn't work. Was it suppose to go somewhere else? And i changed the QID to the relevant id.

Please Log in to join the conversation.

More
3 years 9 months ago #103989 by firzen
firzen replied the topic: Array dual scale - make one answer scale not mandatory
Got it working, just had to remove the comments.

Please Log in to join the conversation.

More
3 years 9 months ago - 3 years 9 months ago #104001 by tpartner
tpartner replied the topic: Array dual scale - make one answer scale not mandatory
The script should be placed in the source of the array QUESTION TEXT.

If placed there, you will not need to replace "{QID}" and should not need to remove the comments.

.

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Last Edit: 3 years 9 months ago by tpartner.

Please Log in to join the conversation.

More
3 years 9 months ago #104009 by Mazi
Mazi replied the topic: Array dual scale - make one answer scale not mandatory
Great solution, Tony.

Did you already add this to the workaround section? Might be really useful for others!


Best regards/Beste Grüße,
Dr. Marcel Minke
(Limesurvey Head of Support)
Need Help? We offer professional Limesurvey support
Contact: marcel.minke(at)survey-consulting.com'"

Please Log in to join the conversation.

More
3 years 8 months ago #104103 by tpartner
tpartner replied the topic: Array dual scale - make one answer scale not mandatory
I have added this to the workarounds with an improved script that allows selecting either scale and a column of that scale to be default - manual.limesurvey.org/Workarounds:_Manip...scale_Array_Question .

<script type="text/javascript" charset="utf-8">	
 
	$(document).ready(function() {
 
		// Scale to set the default answer on
		var defaultAnsweredScale = 2; 
		// Column of that scale to set as default answer
		var defaultAnsweredColumn = 3;
 
		// Identify this question
		var thisQuestion = $('#question{self.qid}');
 
		// Identify the scales and columns
		$('.answer-item[class^="answer_cell_1"]', thisQuestion).addClass('scale-1-item');
		$('.answer-item[class^="answer_cell_2"]', thisQuestion).addClass('scale-2-item');
		$('tr.answers-list', thisQuestion).each(function(i) {
			$('.scale-1-item', this).each(function(i) {
				$(this).addClass('scale-1-column-'+(i+1)+'-item');
			});
			$('.scale-2-item', this).each(function(i) {
				$(this).addClass('scale-2-column-'+(i+1)+'-item');
			});
		});
 
		// Click the default answers
		$('tr.answers-list', thisQuestion).each(function(i) {
			if($('.scale-'+defaultAnsweredScale+'-item input[type="radio"]:checked', this).length == 0) {
				$('.scale-'+defaultAnsweredScale+'-column-'+defaultAnsweredColumn+'-item input[type="radio"]:last', this).click();
			}
		});
	});
</script>

Sample survey:

File Attachment:

File Name: dual_scale...wers.lss
File Size:20 KB


.

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Attachments:

Please Log in to join the conversation.

More
3 years 8 months ago #104105 by Mazi
Mazi replied the topic: Array dual scale - make one answer scale not mandatory
Thanks a lot!


Best regards/Beste Grüße,
Dr. Marcel Minke
(Limesurvey Head of Support)
Need Help? We offer professional Limesurvey support
Contact: marcel.minke(at)survey-consulting.com'"

Please Log in to join the conversation.

More
2 years 6 months ago #118779 by Tascja
Tascja replied the topic: Array dual scale - make one answer scale not mandatory
Hi Tony,
Your solution to the problem is what I am looking for. I have a dual array scale (first is quantity and second is frequency) and would like it to be automatic that when someone selects none for quantity, never in frequency is automatically selected.
Here is my problem: I cannot use JavaScript. The administrators would like to avoid activating this feature.
Do you know if there is a way to accomplish this same thing but with Expression Manager and/or equations?

Thanks in advance for your help :)

Please Log in to join the conversation.

More
2 years 6 months ago #118780 by tpartner
tpartner replied the topic: Array dual scale - make one answer scale not mandatory
No, sorry, I don't know of any way to do it with EM.

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

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now