Allow "click back" without restarting timer questions / Disable timer question after first use? | XM Community
Skip to main content
Solved

Allow "click back" without restarting timer questions / Disable timer question after first use?

  • July 3, 2019
  • 4 replies
  • 25 views

I am using a timer question to ensure that subjects spend at least 10 seconds on a slide. Once they have clicked through the slide, however, I would like to give subject the ability to click back to review the slide without restarting the timer. A Qualtrics help employee informed me that that this would need custom code - has anyone done something like this before?

Best answer by TomG

> @JenCX said: > I would suggest using branch logic and embedded data to set a status for each slide once they've seen it once, then use display logic on your timer question to only display it if that status isn't set. If you used branch logic then they wouldn't be able to click back at all and the embedded data field would be meaningless. It sorta solves the problem, but probably not in the way @hursre is thinking. However, using that idea, you could set an embedded variable in JavaScript then use that variable in display logic to prevent the timer question from displaying when they go back. Add this JS to your timed slide questions (change embedded data field for each slide): ``` Qualtrics.SurveyEngine.addOnPageSubmit(function() { Qualtrics.SurveyEngine.setEmbeddedData("noTimerSlide1", "1"); }); ```

4 replies

JenCX
Level 5 ●●●●●
Forum|alt.badge.img+11
  • Level 5 ●●●●●
  • July 15, 2019
I would suggest using branch logic and embedded data to set a status for each slide once they've seen it once, then use display logic on your timer question to only display it if that status isn't set.

TomG
Level 8 ●●●●●●●●
Forum|alt.badge.img+27
  • Level 8 ●●●●●●●●
  • Answer
  • July 15, 2019
> @JenCX said: > I would suggest using branch logic and embedded data to set a status for each slide once they've seen it once, then use display logic on your timer question to only display it if that status isn't set. If you used branch logic then they wouldn't be able to click back at all and the embedded data field would be meaningless. It sorta solves the problem, but probably not in the way @hursre is thinking. However, using that idea, you could set an embedded variable in JavaScript then use that variable in display logic to prevent the timer question from displaying when they go back. Add this JS to your timed slide questions (change embedded data field for each slide): ``` Qualtrics.SurveyEngine.addOnPageSubmit(function() { Qualtrics.SurveyEngine.setEmbeddedData("noTimerSlide1", "1"); }); ```

JenCX
Level 5 ●●●●●
Forum|alt.badge.img+11
  • Level 5 ●●●●●
  • July 15, 2019
> @TomG said: > > @JenCX said: > > I would suggest using branch logic and embedded data to set a status for each slide once they've seen it once, then use display logic on your timer question to only display it if that status isn't set. > > If you used branch logic then they wouldn't be able to click back at all and the embedded data field would be meaningless. It sorta solves the problem, but probably not in the way @hursre is thinking. > > However, using that idea, you could set an embedded variable in JavaScript then use that variable in display logic to prevent the timer question from displaying when they go back. Add this JS to your timed slide questions (change embedded data field for each slide): > ``` > Qualtrics.SurveyEngine.addOnPageSubmit(function() { > Qualtrics.SurveyEngine.setEmbeddedData("noTimerSlide1", "1"); > }); > ``` Yep, you're totally right. I must have been distracted when I read the OP because I was thinking they were wanting to reroute at the end of the survey. Thanks for clarifying so the poor person didn't take my incorrect advice.

  • Author
  • July 27, 2019
Thanks all! The JS solution worked!