ButtonsResponse
Defined in: parser/types.ts:829
The ButtonsResponse interface is used to define the properties of a buttons response. ButtonsResponses render as a list of buttons that the participant can click. When a button is clicked, the value of the button is stored in the data file. Participants can cycle through the options using the arrow keys.
{
"id": "buttonsResponse",
"type": "buttons",
"prompt": "Click a button",
"location": "belowStimulus",
"default": "Option 2",
"options": [
"Option 1",
"Option 2",
"Option 3"
]
}
In this example, the participant can click one of the buttons labeled "Option 1", "Option 2", or "Option 3".
Extends​
Properties​
| Property | Type | Description | Inherited from | Defined in |
|---|---|---|---|---|
default? | string | The default value of the response. Specify one option value as a string. | - | parser/types.ts:833 |
excludeFromRandomization? | boolean | Exclude response from randomization. If present, will override the responseOrder randomization setting in the components. Defaults to false. | BaseResponse.excludeFromRandomization | parser/types.ts:377 |
hidden? | boolean | Controls whether the response is hidden. | BaseResponse.hidden | parser/types.ts:367 |
id | string | The id of the response. This is used to identify the response in the data file. | BaseResponse.id | parser/types.ts:349 |
infoText? | string | The description that is displayed when the participant hovers over the response. This does not accept markdown. | BaseResponse.infoText | parser/types.ts:355 |
location? | ConfigResponseBlockLocation | Controls the response location. These might be the same for all responses, or differ across responses. Defaults to belowStimulus | BaseResponse.location | parser/types.ts:359 |
optionOrder? | "random" | "fixed" | The order in which the buttons are displayed. Defaults to fixed. | - | parser/types.ts:835 |
options | (string | StringOption)[] | - | - | parser/types.ts:831 |
paramCapture? | string | Use to capture querystring parameters in answers such as participant_name. See the examples for how this is used, but prefer uiConfig.urlParticipantIdParam if you are capturing a participant ID. | BaseResponse.paramCapture | parser/types.ts:365 |
prompt | string | The prompt that is displayed to the participant. You can use markdown here to render images, links, etc. | BaseResponse.prompt | parser/types.ts:351 |
required? | boolean | Controls whether the response is required to be answered. Defaults to true. | BaseResponse.required | parser/types.ts:357 |
requiredLabel? | string | You can provide a required label, which makes it so a participant has to answer with a response that matches label. | BaseResponse.requiredLabel | parser/types.ts:363 |
requiredValue? | unknown | You can provide a required value, which makes it so a participant has to answer with that value. | BaseResponse.requiredValue | parser/types.ts:361 |
secondaryText? | string | The secondary text that is displayed to the participant under the prompt. This does not accept markdown. | BaseResponse.secondaryText | parser/types.ts:353 |
style? | Styles | You can set styles here, using React CSSProperties, for example: {"width": 100} or {"width": "50%"} | BaseResponse.style | parser/types.ts:375 |
stylesheetPath? | string | The path to the external stylesheet file. | BaseResponse.stylesheetPath | parser/types.ts:373 |
type | "buttons" | - | - | parser/types.ts:830 |
withDivider? | boolean | Renders the response with a trailing divider. If present, will override the divider setting in the components or uiConfig. | BaseResponse.withDivider | parser/types.ts:369 |
withDontKnow? | boolean | Renders the response with an option for "I don't know". This counts as a completed answer for the validation. | BaseResponse.withDontKnow | parser/types.ts:371 |