- Posts: 222
- Thank you received: 10
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Hiding specific checkboxes in multiple choice & with comments
- krosser
- Topic Author
- Offline
- Elite Member
I does work, Tony. I just wanted to move the labels to the left, adjusting the padding. But the CSS code needed to be different for the simple multiple choice and multiple choice with comments. That's all.tpartner wrote: So, now I'm lost. Does the code that I provided not work?
I'm using the latest LS 3.22 hosted on LS servers, not installed locally.
- marcgold
- Offline
- Premium Member
- Posts: 85
- Thank you received: 9
krosser wrote: I have also tried to adjust the padding, using CSS, and this code has worked for the multiple choice with comments:
Code:.checkbox-text-item.hidden-checkbox .checkbox-item, .checkbox-text-item.hidden-checkbox .checkbox-item label { padding-left: 0; }
For multiple choice without comments, this code worked:
Hi
I have managed to hide the checkbox, but moving the label left didn't work. What I did notice is that the hyperlink on the label still activates the checkbox.
Can you explain how you managed to move the label as the code above doesn't seem to work in custom.css.
FYI LS version is 3.17
Thanks
marc
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10109
- Thank you received: 3595
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- marcgold
- Offline
- Premium Member
- Posts: 85
- Thank you received: 9
tpartner wrote: Can you please explain exactly what you are trying to accomplish with a mock-up, give your LimeSurvey version and attach a small sample survey (.lss file).
Thanks Tpartner.
A working model for this would be super useful, as this type of question come up a lot. It's all about how the question is displayed to the survey taker and tries to group items into logical sections / headings. Personally I really think this should be built into LS as part of the question - I will add it to feature requests. My current version is LS 3.17.2
The Layout is as Such
Heading 1
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
Thanks in Advance
Marc
- krosser
- Topic Author
- Offline
- Elite Member
- Posts: 222
- Thank you received: 10
marcgold wrote: What I did notice is that the hyperlink on the label still activates the checkbox.
Can you explain how you managed to move the label as the code above doesn't seem to work in custom.css.
Yes, you are right about checkboxes being activated when labels are clicked. It registers a 'Yes' for them. But this workaround for the user/respondent and they don't know. I know that you will need to clean your export data if they accidentally click on those labels.
Regarding moving labels to the left, if you used Tony's script for adding the class "hidden-checkbox", then you can try the following in custom.css for a basic multiple-choice (without comments):
I'm using the latest LS 3.22 hosted on LS servers, not installed locally.
- asilbering
- Offline
- Senior Member
- Posts: 74
- Thank you received: 1
I am currently migrating from LimeSurvey 2.05+ to 3.19.2. I was using the following script to hide checkboxes next to headlines in a multiple choice question without comments:
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$('#answer{SGQ}t1').hide();
$('#answer{SGQ}t2x1').hide();
$('#answer{SGQ}t2x2').hide();
$('#answer{SGQ}t2x3').hide();
$('#answer{SGQ}t2x4').hide();
}); </script>
The results was as in the attached image.
I have added the scripts proposed by tpartner, and they work fine to hide the box but the label was not shifted to the left although I added the lines in the custom.css file:
.answers-list .hidden-checkbox,
.answers-list .hidden-checkbox label {
padding-left: 0;
}
Any ideas ?
I was also wondering if there is a way to use the subquestion code to specify the check boxes to be hidden in the following line, rather than using the subquestions "number":
$('#question{QID} .answers-list li:eq(0)').addClass('hidden-checkbox');
If there is already a request for this feature (i.e. adding headings to multiple choice lists) I would be happy to vote for it.
Thanks in advance!
Best regards,
Ana
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10109
- Thank you received: 3595
Can you attach a small sample survey (.lss file) containing only the relevant question and your code?
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- asilbering
- Offline
- Senior Member
- Posts: 74
- Thank you received: 1
thanks for your quick reply.
I am using vanilla.
Here is a sample survey.
There is another weird thing: at the bottom of the question there are two large boxes and I have no idea where they are coming from...
Thanks in advance for your help!
Best regards,
Ana
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10109
- Thank you received: 3595
<script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:scriptcomplete',function(){ $('#question{QID} .answers-list li:eq(1)').addClass('hidden-checkbox'); $('#question{QID} .answers-list li:eq(7)').addClass('hidden-checkbox'); $('#question{QID} .answers-list li:eq(19)').addClass('hidden-checkbox'); $('#question{QID} .answers-list li:eq(23)').addClass('hidden-checkbox'); $('#question{QID} .hidden-checkbox input').remove(); }); </script> <style type="text/css"> #question{QID} .hidden-checkbox { padding: 0; } #question{QID} .hidden-checkbox label { padding: 0; font-weight: bold; font-style: italic; } #question{QID} .hidden-checkbox label::before, #question{QID} .hidden-checkbox label::after { display: none; } </style>
Sample survey attached:
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- asilbering
- Offline
- Senior Member
- Posts: 74
- Thank you received: 1
The script works great to place the headings to the left.
However I still have the weird boxes on the bottom of the question (see image attached) when I add the script to my original survey, but they are not there in the sample survey you sent me... any ideas on where they could be coming from?
Since you didn't mention this in your reply, I guess there is no way to use the subquestion code instead of the line number, right?
I am just asking because I have to create many different surveys with this question, where the headings (thus the subquestion codes) remain the same, but the amount of options (subquestions) between them varies, and it is quite annoying to have to count the lines every time.
Thanks again.
Best regards,
Ana
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10109
- Thank you received: 3595
I used indexes in my selectors because that's what you were working with in your sample survey. If you want to use sub-question codes, try this:
<script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:scriptcomplete',function(){ var qID = '{QID}'; $('li[id$="X'+qID+'t1"]').addClass('hidden-checkbox'); // SQ code t1 $('li[id$="X'+qID+'t2x1"]').addClass('hidden-checkbox'); // SQ code t2x1 $('li[id$="X'+qID+'t2x2"]').addClass('hidden-checkbox'); // SQ code t2x2 $('li[id$="X'+qID+'t2x3"]').addClass('hidden-checkbox'); // SQ code t2x3 $('#question{QID} .hidden-checkbox input').remove(); }); </script> <style type="text/css"> #question{QID} .hidden-checkbox { padding: 0; } #question{QID} .hidden-checkbox label { padding: 0; font-weight: bold; font-style: italic; } #question{QID} .hidden-checkbox label::before, #question{QID} .hidden-checkbox label::after { display: none; } </style>
Sample survey:
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- asilbering
- Offline
- Senior Member
- Posts: 74
- Thank you received: 1
I had actually asked about the codes in my original question, but maybe I was not clear enough.
Thanks again for your time and great support!
Ana
asilbering wrote:
I was also wondering if there is a way to use the subquestion code to specify the check boxes to be hidden in the following line, rather than using the subquestions "number":
$('#question{QID} .answers-list li:eq(0)').addClass('hidden-checkbox');
Ana