1) Place this script in the source of a question (this only needs to be inserted once per page).
Code:
<script type="text/javascript" data-author="Tony Partner">
function fixItemPosition(code, position, qID) {
var thisQuestion = $('#question'+qID);
var answerList = $('.answer-item:eq(0)', thisQuestion).parent();
var answerItem = $('.answer-item[id$="X'+qID+code+'"]', thisQuestion);
if(position == 1) {
answerList.prepend(answerItem);
}
else {
var clone = answerItem.clone(true);
answerItem.remove();
$($('.answer-item:eq('+(position-2)+')', thisQuestion)).after(clone);
}
}
</script>
2) Place this in the source of a list-radio or multiple-choice question. <br />Replace
[answer/subquestion code] and
[fixed position] as necessary.
Code:
<script type="text/javascript" data-author="Tony Partner">
$(document).on('ready pjax:scriptcomplete',function(){
fixItemPosition('[answer/subquestion code]', [fixed position], {QID});
});
</script>
So, if you want answer code "A2" in position 2.
Code:
<script type="text/javascript" data-author="Tony Partner">
$(document).on('ready pjax:scriptcomplete',function(){
fixItemPosition('A2', 2, {QID});
});
</script>
If you want answer code "A2" in position 2, answer code "A3" in position 3 and answer code "A4" in position 4.<br />(always start with the last item to be placed, working towards the first)
Code:
<script type="text/javascript" data-author="Tony Partner">
$(document).on('ready pjax:scriptcomplete',function(){
fixItemPosition('A4', 4, {QID});
fixItemPosition('A3', 3, {QID});
fixItemPosition('A2', 2, {QID});
});
</script>
Sample survey attached: