Continue button not working in surveypage?


Author
Message
AKrishna
AKrishna
Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)
Group: Forum Members
Posts: 102, Visits: 337
Dear all,

I just ran the first twenty participants on my Inquisit Web study (internal name PSPA) and received a lot of messages that there was a problem with a surveypage in my study. Specifically, participants reported the Continue button wasn't working. The relevant code is here:

<values>
// normally, PositivityStrength would be set by subject number in the expt element; for this, I have set it to random
/PositivityStrength = noreplace("Mildly Positive","Highly Positive")
/MissedAttCheck = false
</values>

<expressions>
// normally, AcceptSubmission would count critical trials to test for completion; for this toy code, I have set it to false
/AcceptSubmission = if (false) "YES"
else "NO"
/BonusPayment = if (expressions.AcceptSubmission == "YES") ""
else if (script.currentblocknumber == 1) format("%.2f", 0.25)
else if (script.currentblocknumber == 2) format("%.2f", 0.35)
else if (script.currentblocknumber == 3) format("%.2f", 0.45)
else if (script.currentblocknumber == 4) format("%.2f", 0.75)
else if (script.currentblocknumber == 5) format("%.2f", 0.80)
else if (script.currentblocknumber == 6) format("%.2f", 0.85)
else if (script.currentblocknumber == 7) format("%.2f", 1.15)
else if (script.currentblocknumber == 8) format("%.2f", 1.20)
else if (script.currentblocknumber == 9) format("%.2f", 1.25)
else if (script.currentblocknumber == 10) format("%.2f", 1.55)
else if (script.currentblocknumber == 11) format("%.2f", 1.60)
/ACCorrect = (radiobuttons.BobAC1.response == "true" && radiobuttons.BobAC2.response == "true" && radiobuttons.BobAC3.response == "false" && radiobuttons.BobAC4.response == "false")
/MonkeyACtrue = if (rand(1, 100) <= 4) "false" else "true"
/MonkeyACfalse = if (rand(1, 100) <= 4) "true" else "false"
</expressions>

<block AttentionCheck>
/ onblockbegin = [
    radiobuttons.BobAC1.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC2.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC3.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC4.vposition = list.ACPositions.nextvalue;
]

/ trials = [1 = AC]
/ ontrialend = [
    if (script.currenttrial.latency > values.TimeOutThreshold || (monkey.monkeymode && rand(1,1000) < 2)) values.TimedOut = true
]
</block>

<list ACPositions>
/ items = ("50%","60%","70%","80%")
/ selectionrate = always
</list>
<surveypage AC>
/ stimulusframes = [1 = SummaryBobInfo, According, NotQuite]
/ questions = [1 = BobAC1, BobAC2, BobAC3, BobAC4]
/ showquestionnumbers = false
/ branch = [
if (!expressions.ACCorrect && text.NotQuite.unselectedcount > 0) surveypage.AC
else if (!expressions.ACCorrect) trial.QuitDueToAttentionChecks
]
</surveypage>

<html SummaryBobInfo>
/ items = ("SummaryBobInfo.html")
/ position = (50%, 25%)
/ size = (80%, 35%)
</html>

<text According>
/ items = ("According to what you have learned about Bob...")
/ position = (50%, 45%)
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
</text>

<text NotQuite>
/ items = ("","That wasn't quite right. Please try again.")
/ position = (50%, 47.5%)
/ txcolor = red
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ select = sequence
</text>

<radiobuttons BobAC1>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob spends his money on people in need~"
    else ~"Bob likes doing activities with his friends~"%>"
/ position = (10%, 50%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC2>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob volunteers for social causes~"
    else ~"Bob often bakes and takes care of his garden~"%>"
/ position = (10%, 60%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC3>
/ options = ("true","false")
/ caption = "Bob eats only fruit and vegetables"
/ position = (10%, 70%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<radiobuttons BobAC4>
/ options = ("true","false")
/ caption = "Bob works for the government"
/ position = (10%, 80%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<trial QuitDueToAttentionChecks>
/ ontrialbegin = [
    values.MissedAttCheck = true
]

/ stimulustimes = [0 = clearscreen, QuitDueToAttentionChecks, PressSpaceToEnd]
/ validresponse = (57)
/ ontrialend = [
    script.abort(true)
]
/ beginresponsetime = 2000
</trial>

<text QuitDueToAttentionChecks>
/ items = ("Dear participant, unfortunately, you answered incorrectly. While we appreciate that this may have been a sequence of simple misclicks on your part, this still renders your dataset unusable, as we have no way of being sure you read and understood the information about Bob. Thus, the experiment will now end.

As you failed a comprehension check in line with Prolific guidelines, we cannot accept your submission. Please do NOT click the completion link or the study coordinator will be forced to reject your submission, impacting your Prolific score. Instead, return the submission.

You will be paid partial compensation through the Prolific bonus system in the amount of £<%expressions.BonusPayment%>.

If you do not receive your bonus payment within three days, please contact the study coordinator via the Prolific messaging system.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,50)
/ size = (75%,45%)
</text>

<text PressSpaceToEnd>
/ items = ("Press the SPACEBAR to end.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,75)
</text>


The required HTML file can be found in the online study repository (should be accessible to Inquisit admins); however, I imagine the issue will not hinge on its content.

Participants reported that the study was "hanging"; a few mentioned the Continue button not working explicitly. Normally, the next block would have begun on a click of "Continue" (barring incorrect answers, which would loop back to the surveypage once and then skip to a "quit" trial). One participant also reported that "the questions became a big font", which may be an unrelated (and probably non-critical) issue, although they also reported that "it became difficult to select an answer and wouldn't let me continue".

I checked the data and found some odd patterns. Several participants appeared to get it wrong or leave out an item. A larger proportion appears to have responded to the surveypage correctly, but their data cuts out there (consistent with a Ctrl+Q response after selecting the correct items). In fact, this seems to have been an appreciable portion of the sample - more participants show this pattern than complete the full task.

I have paused data collection for now. Is there any way to figure out what might be causing this? I would have thought that people perhaps hadn't selected one of the required radiobutton items, but the data showing a correct response pattern and a quit on the same page seems to contradict this. Sorry for the vagueness of the error.

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 100K
AKrishna - 5/31/2024
Dear all,

I just ran the first twenty participants on my Inquisit Web study (internal name PSPA) and received a lot of messages that there was a problem with a surveypage in my study. Specifically, participants reported the Continue button wasn't working. The relevant code is here:

<values>
// normally, PositivityStrength would be set by subject number in the expt element; for this, I have set it to random
/PositivityStrength = noreplace("Mildly Positive","Highly Positive")
/MissedAttCheck = false
</values>

<expressions>
// normally, AcceptSubmission would count critical trials to test for completion; for this toy code, I have set it to false
/AcceptSubmission = if (false) "YES"
else "NO"
/BonusPayment = if (expressions.AcceptSubmission == "YES") ""
else if (script.currentblocknumber == 1) format("%.2f", 0.25)
else if (script.currentblocknumber == 2) format("%.2f", 0.35)
else if (script.currentblocknumber == 3) format("%.2f", 0.45)
else if (script.currentblocknumber == 4) format("%.2f", 0.75)
else if (script.currentblocknumber == 5) format("%.2f", 0.80)
else if (script.currentblocknumber == 6) format("%.2f", 0.85)
else if (script.currentblocknumber == 7) format("%.2f", 1.15)
else if (script.currentblocknumber == 8) format("%.2f", 1.20)
else if (script.currentblocknumber == 9) format("%.2f", 1.25)
else if (script.currentblocknumber == 10) format("%.2f", 1.55)
else if (script.currentblocknumber == 11) format("%.2f", 1.60)
/ACCorrect = (radiobuttons.BobAC1.response == "true" && radiobuttons.BobAC2.response == "true" && radiobuttons.BobAC3.response == "false" && radiobuttons.BobAC4.response == "false")
/MonkeyACtrue = if (rand(1, 100) <= 4) "false" else "true"
/MonkeyACfalse = if (rand(1, 100) <= 4) "true" else "false"
</expressions>

<block AttentionCheck>
/ onblockbegin = [
    radiobuttons.BobAC1.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC2.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC3.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC4.vposition = list.ACPositions.nextvalue;
]

/ trials = [1 = AC]
/ ontrialend = [
    if (script.currenttrial.latency > values.TimeOutThreshold || (monkey.monkeymode && rand(1,1000) < 2)) values.TimedOut = true
]
</block>

<list ACPositions>
/ items = ("50%","60%","70%","80%")
/ selectionrate = always
</list>
<surveypage AC>
/ stimulusframes = [1 = SummaryBobInfo, According, NotQuite]
/ questions = [1 = BobAC1, BobAC2, BobAC3, BobAC4]
/ showquestionnumbers = false
/ branch = [
if (!expressions.ACCorrect && text.NotQuite.unselectedcount > 0) surveypage.AC
else if (!expressions.ACCorrect) trial.QuitDueToAttentionChecks
]
</surveypage>

<html SummaryBobInfo>
/ items = ("SummaryBobInfo.html")
/ position = (50%, 25%)
/ size = (80%, 35%)
</html>

<text According>
/ items = ("According to what you have learned about Bob...")
/ position = (50%, 45%)
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
</text>

<text NotQuite>
/ items = ("","That wasn't quite right. Please try again.")
/ position = (50%, 47.5%)
/ txcolor = red
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ select = sequence
</text>

<radiobuttons BobAC1>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob spends his money on people in need~"
    else ~"Bob likes doing activities with his friends~"%>"
/ position = (10%, 50%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC2>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob volunteers for social causes~"
    else ~"Bob often bakes and takes care of his garden~"%>"
/ position = (10%, 60%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC3>
/ options = ("true","false")
/ caption = "Bob eats only fruit and vegetables"
/ position = (10%, 70%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<radiobuttons BobAC4>
/ options = ("true","false")
/ caption = "Bob works for the government"
/ position = (10%, 80%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<trial QuitDueToAttentionChecks>
/ ontrialbegin = [
    values.MissedAttCheck = true
]

/ stimulustimes = [0 = clearscreen, QuitDueToAttentionChecks, PressSpaceToEnd]
/ validresponse = (57)
/ ontrialend = [
    script.abort(true)
]
/ beginresponsetime = 2000
</trial>

<text QuitDueToAttentionChecks>
/ items = ("Dear participant, unfortunately, you answered incorrectly. While we appreciate that this may have been a sequence of simple misclicks on your part, this still renders your dataset unusable, as we have no way of being sure you read and understood the information about Bob. Thus, the experiment will now end.

As you failed a comprehension check in line with Prolific guidelines, we cannot accept your submission. Please do NOT click the completion link or the study coordinator will be forced to reject your submission, impacting your Prolific score. Instead, return the submission.

You will be paid partial compensation through the Prolific bonus system in the amount of £<%expressions.BonusPayment%>.

If you do not receive your bonus payment within three days, please contact the study coordinator via the Prolific messaging system.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,50)
/ size = (75%,45%)
</text>

<text PressSpaceToEnd>
/ items = ("Press the SPACEBAR to end.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,75)
</text>


The required HTML file can be found in the online study repository (should be accessible to Inquisit admins); however, I imagine the issue will not hinge on its content.

Participants reported that the study was "hanging"; a few mentioned the Continue button not working explicitly. Normally, the next block would have begun on a click of "Continue" (barring incorrect answers, which would loop back to the surveypage once and then skip to a "quit" trial). One participant also reported that "the questions became a big font", which may be an unrelated (and probably non-critical) issue, although they also reported that "it became difficult to select an answer and wouldn't let me continue".

I checked the data and found some odd patterns. Several participants appeared to get it wrong or leave out an item. A larger proportion appears to have responded to the surveypage correctly, but their data cuts out there (consistent with a Ctrl+Q response after selecting the correct items). In fact, this seems to have been an appreciable portion of the sample - more participants show this pattern than complete the full task.

I have paused data collection for now. Is there any way to figure out what might be causing this? I would have thought that people perhaps hadn't selected one of the required radiobutton items, but the data showing a correct response pattern and a quit on the same page seems to contradict this. Sorry for the vagueness of the error.

The layout is bad. On smaller screens and/or at lower resolutions questions will overlap, making it impossible to answer them. Elements may also overlap the navigation button, making it impossible to advance.


Edited Last Month by Dave
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 100K
Dave - 5/31/2024
AKrishna - 5/31/2024
Dear all,

I just ran the first twenty participants on my Inquisit Web study (internal name PSPA) and received a lot of messages that there was a problem with a surveypage in my study. Specifically, participants reported the Continue button wasn't working. The relevant code is here:

<values>
// normally, PositivityStrength would be set by subject number in the expt element; for this, I have set it to random
/PositivityStrength = noreplace("Mildly Positive","Highly Positive")
/MissedAttCheck = false
</values>

<expressions>
// normally, AcceptSubmission would count critical trials to test for completion; for this toy code, I have set it to false
/AcceptSubmission = if (false) "YES"
else "NO"
/BonusPayment = if (expressions.AcceptSubmission == "YES") ""
else if (script.currentblocknumber == 1) format("%.2f", 0.25)
else if (script.currentblocknumber == 2) format("%.2f", 0.35)
else if (script.currentblocknumber == 3) format("%.2f", 0.45)
else if (script.currentblocknumber == 4) format("%.2f", 0.75)
else if (script.currentblocknumber == 5) format("%.2f", 0.80)
else if (script.currentblocknumber == 6) format("%.2f", 0.85)
else if (script.currentblocknumber == 7) format("%.2f", 1.15)
else if (script.currentblocknumber == 8) format("%.2f", 1.20)
else if (script.currentblocknumber == 9) format("%.2f", 1.25)
else if (script.currentblocknumber == 10) format("%.2f", 1.55)
else if (script.currentblocknumber == 11) format("%.2f", 1.60)
/ACCorrect = (radiobuttons.BobAC1.response == "true" && radiobuttons.BobAC2.response == "true" && radiobuttons.BobAC3.response == "false" && radiobuttons.BobAC4.response == "false")
/MonkeyACtrue = if (rand(1, 100) <= 4) "false" else "true"
/MonkeyACfalse = if (rand(1, 100) <= 4) "true" else "false"
</expressions>

<block AttentionCheck>
/ onblockbegin = [
    radiobuttons.BobAC1.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC2.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC3.vposition = list.ACPositions.nextvalue;
    radiobuttons.BobAC4.vposition = list.ACPositions.nextvalue;
]

/ trials = [1 = AC]
/ ontrialend = [
    if (script.currenttrial.latency > values.TimeOutThreshold || (monkey.monkeymode && rand(1,1000) < 2)) values.TimedOut = true
]
</block>

<list ACPositions>
/ items = ("50%","60%","70%","80%")
/ selectionrate = always
</list>
<surveypage AC>
/ stimulusframes = [1 = SummaryBobInfo, According, NotQuite]
/ questions = [1 = BobAC1, BobAC2, BobAC3, BobAC4]
/ showquestionnumbers = false
/ branch = [
if (!expressions.ACCorrect && text.NotQuite.unselectedcount > 0) surveypage.AC
else if (!expressions.ACCorrect) trial.QuitDueToAttentionChecks
]
</surveypage>

<html SummaryBobInfo>
/ items = ("SummaryBobInfo.html")
/ position = (50%, 25%)
/ size = (80%, 35%)
</html>

<text According>
/ items = ("According to what you have learned about Bob...")
/ position = (50%, 45%)
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
</text>

<text NotQuite>
/ items = ("","That wasn't quite right. Please try again.")
/ position = (50%, 47.5%)
/ txcolor = red
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ select = sequence
</text>

<radiobuttons BobAC1>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob spends his money on people in need~"
    else ~"Bob likes doing activities with his friends~"%>"
/ position = (10%, 50%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC2>
/ options = ("true","false")
/ caption = "<%if (values.PositivityStrength == ~"Highly Positive~") ~"Bob volunteers for social causes~"
    else ~"Bob often bakes and takes care of his garden~"%>"
/ position = (10%, 60%)
/ monkeyresponse = [expressions.MonkeyACtrue]
</radiobuttons>

<radiobuttons BobAC3>
/ options = ("true","false")
/ caption = "Bob eats only fruit and vegetables"
/ position = (10%, 70%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<radiobuttons BobAC4>
/ options = ("true","false")
/ caption = "Bob works for the government"
/ position = (10%, 80%)
/ monkeyresponse = [expressions.MonkeyACfalse]
</radiobuttons>

<trial QuitDueToAttentionChecks>
/ ontrialbegin = [
    values.MissedAttCheck = true
]

/ stimulustimes = [0 = clearscreen, QuitDueToAttentionChecks, PressSpaceToEnd]
/ validresponse = (57)
/ ontrialend = [
    script.abort(true)
]
/ beginresponsetime = 2000
</trial>

<text QuitDueToAttentionChecks>
/ items = ("Dear participant, unfortunately, you answered incorrectly. While we appreciate that this may have been a sequence of simple misclicks on your part, this still renders your dataset unusable, as we have no way of being sure you read and understood the information about Bob. Thus, the experiment will now end.

As you failed a comprehension check in line with Prolific guidelines, we cannot accept your submission. Please do NOT click the completion link or the study coordinator will be forced to reject your submission, impacting your Prolific score. Instead, return the submission.

You will be paid partial compensation through the Prolific bonus system in the amount of £<%expressions.BonusPayment%>.

If you do not receive your bonus payment within three days, please contact the study coordinator via the Prolific messaging system.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,50)
/ size = (75%,45%)
</text>

<text PressSpaceToEnd>
/ items = ("Press the SPACEBAR to end.")
/ fontstyle = ("Verdana", 2%, false, false, false, false, 5, 1)
/ position = (50,75)
</text>


The required HTML file can be found in the online study repository (should be accessible to Inquisit admins); however, I imagine the issue will not hinge on its content.

Participants reported that the study was "hanging"; a few mentioned the Continue button not working explicitly. Normally, the next block would have begun on a click of "Continue" (barring incorrect answers, which would loop back to the surveypage once and then skip to a "quit" trial). One participant also reported that "the questions became a big font", which may be an unrelated (and probably non-critical) issue, although they also reported that "it became difficult to select an answer and wouldn't let me continue".

I checked the data and found some odd patterns. Several participants appeared to get it wrong or leave out an item. A larger proportion appears to have responded to the surveypage correctly, but their data cuts out there (consistent with a Ctrl+Q response after selecting the correct items). In fact, this seems to have been an appreciable portion of the sample - more participants show this pattern than complete the full task.

I have paused data collection for now. Is there any way to figure out what might be causing this? I would have thought that people perhaps hadn't selected one of the required radiobutton items, but the data showing a correct response pattern and a quit on the same page seems to contradict this. Sorry for the vagueness of the error.

The layout is bad. On smaller screens, questions will overlap, making it impossible to answer them. Elements will also overlap the navigation button, making it impossible to advance.


Solutions:

- Define proper font sizes in percentages per /fontstyle in <defaults> and/or the various fontstyle attributes in the respective stimulus and question elements (/fontstyle, /responsefontstyle, /subcaptionfontstyle).
- Move the continue button out of the way to the right per /nextbuttonposition.



Above is with default /fontstyle = ("Arial", 2%) and /nextbuttonposition = (80%, 90%).

To assure things look and work right across different screen sizes, use /windowsize in <defaults> during development (e.g. /windowsize = (1600px, 900px) etc.).

AKrishna
AKrishna
Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)Distinguished Member (3.2K reputation)
Group: Forum Members
Posts: 102, Visits: 337
Cheers, that helped fast! This is what I get for programming while tired...

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search