release notes

SurveyJS v2.0.7

Released: April 30, 2025

SurveyJS v2.0.7 introduces a new Loop and Merge functionality and includes big fixes and minor enhancements.

New Loop and Merge Functionality

Loop and Merge is a feature that allows you to repeat a group of questions and combine the responses into one data object. The loop can either iterate over the same set of questions for each item or adjust dynamically based on user input. For instance, you can create a survey in which respondents are asked to select from a list of products and then answer a set of repeated questions for each selected product.

View "Loop and Merge" Demo

Respondents can exit a loop when they want to, or the loop can break automatically when a certain condition is met. This may happen when a maximum number of entries is reached, a specific value is entered, or a validation rule is triggered. Once the loop ends, the respondent can proceed to the next question or submit the survey.

View "Breakable Loops" Demo

The Loop and Merge feature also supports nested loops. In a nested loop setup, an outer loop iterates over a primary list of items, while an inner loop handles a related set of sub-items. For example, a form might ask an organization owner to provide information about departments (outer loop) and the employees within each department (inner loop).

View "Nested Loops" Demo

Bug Fixes and Minor Enhancements

Form Library

  • Dropdown with choicesByUrl throws a "Maximum recursive updates exceeded" error when the survey is read-only, and the dropdown is pre-populated (#9796)
  • Dropdown: A selected choice item is displayed as an Other value if choices are defined after assigning the question value in code (#9791)
  • navigationButtonsLocation: "topBottom" doesn't apply (#9812)
  • Expression question: An error is raised if maximumFractionDigits and minimumFractionDigits are swapped places

Survey Creator

  • Property Grid: Text in button groups is often truncated with ellipsis (#6549)
  • Webpack cannot compile a Survey Creator style sheet because of an incorrect style (#6867)
  • Update the Image Picker placeholder on the design surface (#6648)
  • Property Grid: A property value is reset if you open a hint while the focus is still within the property editor (#6463)
  • Expression editor inserts line breaks (\n) incorrectly (#6860)
  • Choices table: "Manual Entry" icon is disabled if any choice item specifies the read-only state or visibility based on a condition (#6857)

PDF Generator

  • File Upload with a custom file preview displays a "No file selected" message (#376)

How to Update SurveyJS Libraries in Your Application

Angular
npm i survey-core@2.0.7 survey-angular-ui@2.0.7 --save
npm i survey-creator-core@2.0.7 survey-creator-angular@2.0.7 --save
npm i survey-analytics@2.0.7 --save
npm i survey-pdf@2.0.7 --save
React
npm i survey-core@2.0.7 survey-react-ui@2.0.7 --save
npm i survey-creator-core@2.0.7 survey-creator-react@2.0.7 --save
npm i survey-analytics@2.0.7 --save
npm i survey-pdf@2.0.7 --save
Vue.js
npm i survey-core@2.0.7 survey-vue3-ui@2.0.7 --save
npm i survey-creator-core@2.0.7 survey-creator-vue@2.0.7 --save
npm i survey-analytics@2.0.7 --save
npm i survey-pdf@2.0.7 --save
HTML/CSS/JavaScript
<link href="https://unpkg.com/survey-core@2.0.7/survey-core.min.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="https://unpkg.com/survey-core@2.0.7/survey.core.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/survey-js-ui@2.0.7/survey-js-ui.min.js"></script>

<script src="https://unpkg.com/survey-core@2.0.7/themes/index.min.js"></script>
<script src="https://unpkg.com/survey-creator-core@2.0.7/themes/index.min.js"></script>

<link href="https://unpkg.com/survey-creator-core@2.0.7/survey-creator-core.min.css" type="text/css" rel="stylesheet">
<script src="https://unpkg.com/survey-creator-core@2.0.7/survey-creator-core.min.js"></script>
<script src="https://unpkg.com/survey-creator-js@2.0.7/survey-creator-js.min.js"></script>

<link href="https://unpkg.com/survey-analytics@2.0.7/survey.analytics.min.css" rel="stylesheet">
<script src="https://unpkg.com/survey-analytics@2.0.7/survey.analytics.min.js"></script>

<script src="https://unpkg.com/survey-pdf@2.0.7/survey.pdf.min.js"></script>

Your cookie settings

We use cookies on our site to make your browsing experience more convenient and personal. In some cases, they are essential to making the site work properly. By clicking "Accept All", you consent to the use of all cookies in accordance with our Terms of Use & Privacy Statement. However, you may visit "Cookie settings" to provide a controlled consent.

Your renewal subscription expires soon.

Since the license is perpetual, you will still have permanent access to the product versions released within the first 12 month of the original purchase date.

If you wish to continue receiving technical support from our Help Desk specialists and maintain access to the latest product updates, make sure to renew your subscription by clicking the "Renew" button below.

Your renewal subscription has expired.

Since the license is perpetual, you will still have permanent access to the product versions released within the first 12 month of the original purchase date.

If you wish to continue receiving technical support from our Help Desk specialists and maintain access to the latest product updates, make sure to renew your subscription by clicking the "Renew" button below.