SurveyJS v2.5.6

Released: January 15, 2026

SurveyJS v2.5.6 introduces expression validation in Survey Creator and adds a capability to customize regular expressions dynamically.

[Survey Creator] Expression Validation

Writing and editing expressions is error-prone. This Survey Creator release adds built-in expression validation that helps authors identify issues early. Survey Creator detects three types of errors:

  • Unknown variable
    The expression references an undefined variable or an unknown question, panel, or page name. This check is disabled by default. To enable it, set the expressionsValidateVariables property to true.

  • Unknown function
    The expression references an unregistered function. You can disable this check by setting the expressionsValidateFunctions property to false.

  • Syntax error
    The expression contains invalid syntax, such as unmatched parentheses, missing operands, or invalid operators. You can disable this check by setting the expressionsValidateSyntax property to false. Note that this disables expression validation entirely.

Expression validation in Survey Creator

The following example shows how to enable variable validation:

import { SurveyCreatorModel } from "survey-creator-core";

const creatorOptions = {
  expressionsValidateVariables: true
};

const creator = new SurveyCreatorModel(creatorOptions);

Customize RegExp Validation Dynamically

In SurveyJS, regular expressions are used to validate user input against custom rules. Previously, you could only define a pattern and specify whether matching should be case-sensitive. This release introduces the onCreateRegexValidator event, which allows you to customize the regular expression and control additional matching behavior via flags.

For example, the following code enables support for Unicode characters in regular expressions:

// ...
// Omitted: `SurveyModel` creation
// ...
survey.onCreateRegexValidator.add((_, options) => {
  options.flags += "u";
});

New Blog Post

SurveyJS 2026 Roadmap: What We're Building Next

New Help Topics

Survey Creator: How to Translate Forms in the Designer Tab

Survey Creator: How to Translate Forms in the Translations Tab

Bug Fixes and Minor Enhancements

Form Library

  • Expressions: The contains operator ignores the case sensitivity setting (#10784)
  • Expressions are not re-evaluated when they depend on a survey object property and that property changes (#10776)
  • Question number styling is incorrect after the question's visibility changes (#10775)
  • toJSON() with validatePropertyValues: true treats choices whose value is an object as invalid (#10773)
  • Localization JSON schemas are generated incorrectly when the survey includes composite or specialized questions (#10771)
  • Ranking: Dragging a choice option causes ghosting artifacts (#10743)

Survey Creator

  • [Angular] Preview tab: Required mark disappears when the question receives focus (#7368)

How to Update SurveyJS Libraries in Your Application

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

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

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

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

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

Your cookie settings

We use cookies to make your browsing experience more convenient and personal. Some cookies are essential, while others help us analyse traffic. Your personal data and cookies may be used for ad personalization. By clicking “Accept All”, you consent to the use of all cookies as described in our Terms of Use and Privacy Statement. You can manage your preferences in “Cookie settings.”

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.