Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

[open] require response for rating scale

edited February 2015 in OpenSesame

Hello,

I'm trying to use a rating scale Form, but I need to make sure participants actually record a response before clicking the next button (and I want to keep the next button there). I'm using the rating scale form base in a loop so that my question text and response variable are drawn from the loop variables. Here's the code:

set cols "1;1;1"
set description "A generic form plug-in"
set rows "1;1;1;1;1"
widget 0 0 3 1 label text="[text]"
widget 0 2 3 1 rating_scale var="EPQ[num]" nodes="not at all;slightly;moderately;very much;extremely"
widget 2 4 1 1 button text="next"

But I want people not to be able to click next without selecting a response. I've tried to use a solution I found elsewhere by including a inlinescript after the form base, but it's not working. Here's the code for my inline script:

response =  self.get('EPQ[num]')
while True:
        if 'None' in 'response':
            exp.items['_EPQ'].prepare()
            exp.items['_EPQ'].run()

            response =  self.get('EPQ[num]')        
        else:
            break

Any suggestions?? Thanks in advance!

Comments

  • edited 9:39AM

    Hi,

    your code seems to go in the right direction. Why exactly is it not working. Is there an error message, or is it just ignored?

    Eduard

    Buy Me A Coffee

  • edited 9:39AM

    Hi, sorry for the slow response. I get an error that 'EPQ[num]' is not a variable or something like that.

  • edited 9:39AM

    Hey,

    I think the problem of your code is, 'EPQ[num]' is not evaluated as the indexing of a list, but simply as a string. Therefore, self.get() is trying to find the variable with the label EPQ[num] and not the variable that is stored at the 'numth' position of EPQ. What you should do is separating the indexing part from retrieving the variable, e.g. by saving the actual value of EPQ[num] in a new variable, which you then can find in your experiment object.
    Does this help?

    Good luck,

    Eduard

    Buy Me A Coffee

Sign In or Register to comment.