- Posts: 3
- Thank you received: 0
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Array dual scale - make one answer scale not mandatory
- firzen
- Topic Author
- Offline
- New Member
Less
More
10 years 2 months ago - 10 years 2 months ago #103929
by firzen
Array dual scale - make one answer scale not mandatory was created by firzen
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: 10 years 2 months ago by firzen.
The topic has been locked.
- tpartner
- Online
- LimeSurvey Community Team
Less
More
- Posts: 10629
- Thank you received: 3696
10 years 2 months ago #103944
by tpartner
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Replied by tpartner on 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:
.
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:
Code:
<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.
The topic has been locked.
- firzen
- Topic Author
- Offline
- New Member
Less
More
- Posts: 3
- Thank you received: 0
10 years 2 months ago #103982
by firzen
Replied by firzen on 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.
The topic has been locked.
- firzen
- Topic Author
- Offline
- New Member
Less
More
- Posts: 3
- Thank you received: 0
10 years 2 months ago #103989
by firzen
Replied by firzen on topic Array dual scale - make one answer scale not mandatory
Got it working, just had to remove the comments.
The topic has been locked.
- tpartner
- Online
- LimeSurvey Community Team
Less
More
- Posts: 10629
- Thank you received: 3696
10 years 2 months ago - 10 years 2 months ago #104001
by tpartner
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Replied by tpartner on 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.
.
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: 10 years 2 months ago by tpartner.
The topic has been locked.
- Mazi
- Offline
- Official LimeSurvey Partner
10 years 2 months ago #104009
by Mazi
Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support: survey-consulting.com
Contact: marcel.minke(at)survey-consulting.com
Replied by Mazi on 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!
Did you already add this to the workaround section? Might be really useful for others!
Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support: survey-consulting.com
Contact: marcel.minke(at)survey-consulting.com
The topic has been locked.
- tpartner
- Online
- LimeSurvey Community Team
Less
More
- Posts: 10629
- Thank you received: 3696
10 years 2 months ago #104103
by tpartner
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Replied by tpartner on 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
.
Sample survey:
.
Code:
<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:
.
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Attachments:
The topic has been locked.
- Mazi
- Offline
- Official LimeSurvey Partner
10 years 2 months ago #104105
by Mazi
Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support: survey-consulting.com
Contact: marcel.minke(at)survey-consulting.com
Replied by Mazi on topic Array dual scale - make one answer scale not mandatory
Thanks a lot!
Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support: survey-consulting.com
Contact: marcel.minke(at)survey-consulting.com
The topic has been locked.
- Tascja
- Offline
- New Member
Less
More
- Posts: 9
- Thank you received: 0
8 years 11 months ago #118779
by Tascja
Replied by Tascja on 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
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
The topic has been locked.
- tpartner
- Online
- LimeSurvey Community Team
Less
More
- Posts: 10629
- Thank you received: 3696
8 years 11 months ago #118780
by tpartner
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Replied by tpartner on 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.
The topic has been locked.