Require poll questions
Our Marketing team is relatively new to Pendo and last week, May 17th, we launched our first poll and we are running into a couple issues:
- The poll consists of 4 steps and it seems that the response to Step 3 and 4 are not being recorded. It seems to only be recording the questions from steps 1 and 2 and not 3 and 4. Is there a reason for this?
- Also, it appears as though viewers of the poll can skip questions. Is there a way to require answers to poll questions? At least in order to move onto the next step?
You would need to add in a custom code block in order to accomplish this. Here's a document that runs through the step by step of how to set this up.
Hi Angus, thank you so much, I will give this a try!
I did try this and it was very easy to implement. In the Designer everything looks the way I'd expect.
When I do the preview I'm expecting it to look the same as in the Designer, but with the "[REQUIRED]" tag removed. What actually happens is that the whole question is removed, and so is the small text which indicates that a question is required. So, for a required number scale poll question, only the number scale shows in the preview.
Could this be a bug in the code?
Hey Lina Karlsson
I see what you mean, I tested it on my account and although the preview doesn't display the question, it does look like it's showing up properly in production. Here's a video I made testing it. I'll follow up with our team and let them know to check on preview mode.
Hi Angus Yang, I appreciate you following up on this. I actually took help from a developer to fix the code to work in preview and in production, but it does look a little bit different in production than in the preview. Would be great if we could trust that it looks the same in both. Thanks!
Oh interesting, would you mind sharing what the fix was?
Since the preview mode changes the elements so that the question text contains more HTML and not just text, the innerText wiped the content. Replacing it with innerHTML on line 40 works.
requiredQuestions[i].innerText = requiredQuestions[i].innerText.replace("[REQUIRED]", "");
requiredQuestions[i].innerHTML = requiredQuestions[i].innerHTML.replace("[REQUIRED]", "");
Also, since the element structure differs, the double .parentElement.parentElement on line 36 and 38 made the "* required" end up in the wrong place. Removing one .parentElement in each row makes the * Required show up, but they are in different places in the preview and in production.
Please sign in to leave a comment.