Survey Now v2.3.12
Released: October 22, 2025
Survey Now v2.3.12 introduces nested content within choice options. Authors can now embed questions and panels inside Checkboxes and Radio Button Group options to create richer follow-up logic. This update also includes bug fixes and minor enhancements across all Survey Now libraries.
Choices with Nested Content
Survey Now v2.3.12 adds the ability to nest questions and panels inside individual choice options in Checkboxes and Radio Button Group questions. When respondents select such an option, the corresponding nested elements appear dynamically.
To configure this layout in a survey JSON schema, add an elements array to a choice option. This array contains the questions and panels that should appear when that option is selected:
{
"elements": [
{
"type": "checkbox",
"name": "event_preferences",
"title": "Which types of events are you interested in attending?",
"choices": [
{
"value": "music",
"text": "Music events",
"elements": [ // Nested elements
{
"type": "checkbox",
"name": "music_event_type",
"title": "Which type of music event would you like to attend?",
"isRequired": true,
"choices": [
{
"value": "concert",
"text": "Concert",
"elements": [ // Nested elements
{
"type": "text",
"name": "preferred_concert_genre",
"titleLocation": "hidden",
"isRequired": true,
"placeholder": "Enter preferred music genre (e.g., Rock, Jazz)"
},
{
"type": "text",
"name": "preferred_concert_date",
"titleLocation": "hidden",
"inputType": "month",
"placeholder": "Preferred date"
}
]
}
]
}
]
}
]
}
]
}
In Survey Creator, authors can click the Expand button next to a choice option to add nested questions or panels directly on the design surface:
By default, this functionality is disabled. To enable it, configure the maxChoiceContentNestingLevel property. This property defines how many levels of nesting are allowed:
- 0 - Disables nesting (default).
- 1 - Allows first-level choice options to contain survey elements.
- 2 - Allows first- and second-level choice options to contain survey elements, and so on.
Example configuration:
import { SurveyCreatorModel } from "survey-creator-core";
const creatorOptions = {
// Set the property at design time
maxChoiceContentNestingLevel: 2
};
const creator = new SurveyCreatorModel(creatorOptions);
// ... or at runtime
creator.maxChoiceContentNestingLevel = 2;
Bug Fixes and Minor Enhancements
Form Library
- Dynamic Panel: Visibility condition works incorrectly when a nested question's name includes a dot (#10505)
- Signature question doesn't clear placeholder or previous errors after a server error (#10487)
- Question numbering: Extra dot appears after the parent question's index (#10517)
Survey Creator
- [Angular] Selecting a page on the design surface is slow (#7214)
- Choice, matrix row, and column values accept leading and trailing spaces (#7218)
- Question visibility condition changes when the question is duplicated (#7223)
- Console error is raised when editing a choice option whose value contains quotation marks (#7226)
Dashboard
- Table View: Add an API to manage data pagination (#320)
How to Update Survey Now Libraries in Your Application
Angular
npm i [email protected] [email protected] --save
npm i [email protected] [email protected] --save
npm i [email protected] --save
npm i [email protected] --save
React
npm i [email protected] [email protected] --save
npm i [email protected] [email protected] --save
npm i [email protected] --save
npm i [email protected] --save
Vue.js
npm i [email protected] [email protected] --save
npm i [email protected] [email protected] --save
npm i [email protected] --save
npm i [email protected] --save
HTML/CSS/JavaScript
<link href="https://unpkg.com/[email protected]/survey-core.min.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="https://unpkg.com/[email protected]/survey.core.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/[email protected]/survey-js-ui.min.js"></script>
<script src="https://unpkg.com/[email protected]/themes/index.min.js"></script>
<script src="https://unpkg.com/[email protected]/themes/index.min.js"></script>
<link href="https://unpkg.com/[email protected]/survey-creator-core.min.css" type="text/css" rel="stylesheet">
<script src="https://unpkg.com/[email protected]/survey-creator-core.min.js"></script>
<script src="https://unpkg.com/[email protected]/survey-creator-js.min.js"></script>
<link href="https://unpkg.com/[email protected]/survey.analytics.min.css" rel="stylesheet">
<script src="https://unpkg.com/[email protected]/survey.analytics.min.js"></script>
<script src="https://unpkg.com/[email protected]/survey.pdf.min.js"></script>
<script src="https://unpkg.com/[email protected]/pdf-form-filler.min.js"></script>