Earlier this year, we decided to embrace Feedback Server. The more I learn about this survey software, the more I like it. Like all technology ( and content management systems) the true power of the tool lies in the ability of the end user to manipulate it to meet their needs.
I’ve never been a fan of asking a user to loop through a series of questionss based on previous responses, because it gets very easy to lose your place within the questions. Further more, the more you loop, the infinitely larger your number of potential responses – which means that your data export will have a ridiculous number of variables.
Our initial approach
Because you don’t want users to move backwards in a survey, we simply duplicated the questions on different pages and changed the text slightly so it referenced their place in the logic. By using branching logic, we were able to push people to the page that displayed the same set of questions the right number of times. This allowed for looping through the questions. I had some down time today and decided to think through a cleaner way for users to navigate through sets of questions that have nested loops,without creating such complex page structures. After all, this approach requires that you create excessive numbers of questions.
I should also illustrate, this solution is designed to support survey questions like this:
1 – please check each option that refers to you
2 – for each option that you checked, please provide the following 4 pieces of information.
A cleaner solution
This solution requires 2 things :
A question type : Text Box Entry Fields
Building a custom answer type
In this solution, instead of using multiple pages to loop through the same questions, we will use one question and repeatable grids to allow the user to keep entering information as needed. Please note that this solution does not copy and paste your previous answers to define how the next question behaves. This means that some slight modifications will need to be made to your survey questions to use this. That being said, this will result in fewer pages, less clicks for your user, and a survey that’s easier to follow because it won’t have to jump from question to question.
Text Box Entry Fields
Select New Question and choose Textbox Entry Field (Small) – or use Comment Field Large if you want paragraphs of text. The nice thing about this question type is that you can define multiple responses for a single question. You can also define multiple answer types within a single question.
Click Create Question
Now you can enter the text / instructions for your question. Once you have done that, select a text answer label for each text field you want to be able to repeat as needed.
If you have something that you want to repeat over and over, you can use a custom answer type to do that. For example, instead of saying – for each box you checked in question one, answer this set. You can use the repeatable grid and add your custom answer type which provides all of those check box options from the first question.
To create a custom answer type:
Go to designer, then Answer Type Editor
Click on Click here to create a new type
You can now select the type you want. You can do a drop down or radio buttons. Please note that I’ve selected List Items under data source because I’m going to enter the list options manually.
Add your responses to the Item Collection Editor and hit Apply Changes
Configuring your question to use your answer type
Now that you have your additional answer type, you are going to combine your text field answer options with the new drop down items you have selected. You are going to set your question to allow someone to go to a question, fill out several fields, and then choose a drop down option as well . To be clear, here’s an example :
Q1 -Please tell us about the fruit you buy
– Name of fruit
– How you check it for freshness ( 3 drop down list options )
They will have the option to add as many fruit as you want. For each one, they will have to enter the name of the fruit and select a drop down option.
By now your question should be created.
Click on your question and scroll tot he bottom to Add Edit Answers
Click on Add New Answer. You are going to be adding the new answer type that you defined.
Answer Text – this is the label for your custom drop down
Type: Use that drop down to select the custom answer type you wanted
Go back to your question and click on sections
For Repeat Mode – Select Full Answers Repeat
Choose the maximum number of repeats you want
Under the Display layout tab, you can determine if you want a vertical set of responses, or if you want them to show horizontally. Please note that with a full grid repeat, after the first response, the previous responses will be shown in a horizontal grid.
If you look at the question above. Instead of creating branching logic to take someone down a path, making them choose how many responses they want to give and then creating pages for them to enter the information; we have pretty much allowed someone to stay on the same question, enter whatever information they want, and keep adding responses. For the end user this is a lot cleaner because it’s blatantly clear as to what question they are still on. They can view their previous responses and add/edit them as needed.
As a last note – if you wanted to prevent someone from choosing your custom answer option more than once, you simply go to edit that answer, click on entry validation and choose Forbid duplicate answers.
As we work on things, we’re always looking for ways to make an interface cleaner for an end user. This approach definitely reduces the user burden by reducing the number of pages required to collect multiple responses for similar questions.