- Posts: 10286
- Thank you received: 3649
Ask the community, share ideas, and connect with other LimeSurvey users!
<script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:scriptcomplete',function(){ // Identify the questions var qHidden = $('#question{QID}'); var qHiddenID = $(qHidden).attr('id').replace(/question/, ''); // Hide the checkbox question qHidden.css({ 'position': 'absolute', 'left': '-9999em' }); // The ranking answer codes relevant for the various values of "Branch" // EDIT HERE AS REQUIRED var answerCodes = { 1: ['101', '102', '103', '104'], // Seen by "Rangers" 2: ['101', '102', '103', '104', '105', '106'], // Seen by "Pathfinders" 3: ['101', '102', '103', '104', '105', '106', '107', '108'] // Seen by everybody else } // Get the value of the "Branch" question var branch = '{Branch}'; // Define which set of ranking answer codes to display if(branch == 'Ranger') { var codeArray = answerCodes[1]; } else if(branch == 'Pathfinder') { var codeArray = answerCodes[2]; } else { var codeArray = answerCodes[3]; } // Toggle the appropriate checkboxes and fire Expression Manager $('.question-item input:hidden', qHidden).val(''); $('input:checkbox[id$="X'+qHiddenID+this+'"]').prop('checked', false).trigger('change'); $(codeArray).each(function(i) { var thisInput = $('input:checkbox[id$="X'+qHiddenID+this+'"]'); thisInput.nextAll('input:hidden').val('Y'); thisInput.prop('checked', true).trigger('change'); }); }); </script>