Round quota to nearest multiple of 10 using Java in Qualtrics Questionnaire | XM Community
Solved

Round quota to nearest multiple of 10 using Java in Qualtrics Questionnaire

  • 6 November 2018
  • 5 replies
  • 20 views

Dear all,

I would like to generate a question in my survey, where the current number of participants rounded to the next multiple of 10 is displayed.
Qualtrics support told me I need to use Java - as I am not familiar with using Java, I'd appreciate your help!

Specifically I would like to display to the participants the text:

_"Number of participants so far: < X"_

Where X represents the next multiple of 10 of number of participants. I have already created a quota named "QuotaCount", which counts the number of participants of the survey.
Therefore the JavaScript should generate i.e. the following:
* if QuotaCount = 0 -> X=10
* if QuotaCount = 1 -> X=10
* if QuotaCount = 6 -> X=10
* if QuotaCount = 10 -> X=20
* if QuotaCount = 11 -> X=20 etc.

I have found the folowing formular online: (parseInt(x / 10, 10) + 1) * 10 - not sure though how to use it in context of the java script.
*
Looking forward to your answers.

Thank you and best regards,
icon

Best answer by TomG 6 November 2018, 17:14

View original

5 replies

Hi TomG,

I was able to test it and it worked!
Thank you very much!

Best regards,
Userlevel 7
Badge +27
> @CaBe2018 said:
> * do I need to type the name of my quota 'QuotaCount' wherever you have 'quota' in your code?
No, 'quota' is a JavaScript variable. You only need to pipe your 'QuotaCount' into the first line where it says '${qo://quota pipe string goes here}'

> * Do the " need to remain or do I replace them?
Yes, you need the quotes around your piped 'QuotaCount'

> * Is there a way to test the code without clicking through the whole survey ?
You can do a View Block from Block Options (helpful if your question is close to the top of the block)

> Just recognized.. the HTML code: "Number of participants so far: < " does not remain. When qualtrics saves the question it changes to: "Number of participants so far: < " - so the reference will not remain in the html code.
It's there, you just don't see it because the initial value inside the `<span>` is blank. It will be updated when the JS runs. You can put a placeholder inside the span (e.g., 0) if you want since it will be replaced. But the respondent may see it flash by before the actual value is set.
Just recognized.. the HTML code: "Number of participants so far: < <span id="X"></span>"
does not remain. When qualtrics saves the question it changes to: "Number of participants so far: < " - so the reference will not remain in the html code.

Thank you very much in advance for your help!

Best regards
Dear Tom,

thank you for the quick reply.
Three more questions:

* do I need to type the name of my quota 'QuotaCount' wherever you have 'quota' in your code?
* Do the " need to remain or do I replace them?
* Is there a way to test the code without clicking through the whole survey ?

Thank you very much in advance!

Best regards,
Userlevel 7
Badge +27
Let's say your html looks like:
```
Number of participants so far: < <span id="X"></span>
```
Then add the following js to the addOnload function:
```
var quota = parseInt("${qo://quota pipe string goes here}");
jQuery("#X").html((parseInt(quota/10, 10)+1)*10);
```

Leave a Reply