Вызов API и управление навигацией с SurveyJS

Я использую SurveyJS ( https://surveyjs.io/), чтобы сделать простой сайт с несколькими вопросами. Я могу выполнить всю свою логику с помощью опций, предоставляемых SurveyJS.

Тем не менее, я хочу сделать следующее:

  • Сделайте вызов API после одного из вопросов (работает как положено)
  • Дождитесь вызова API, прежде чем переходить к следующему вопросу (работает как положено)
  • Если API отвечает false , НЕ переходите к следующему вопросу. (не работает)

Что бы я ни делал, опрос продолжает переходить к следующему вопросу, и я хочу избежать этого в этом случае.

Доступны три обратных вызова:

// triggers before the current page goes away
survey.onCurrentPageChanging.add(function (sender, options) {
    if(survey.data.year === "1991") {
        // let's say I want to stop user from going forward at this point.
        // how can I do that?
    }
});


// triggers after the current page is gone and new page is about to appear
survey.onCurrentPageChanged.add(function (sender) {

});


// triggers right before the survey is about to finish - the last page
survey.onCompleting.add(function (sender, options) {

});

Спасибо за ваше время.

1 ответ

Решение
survey.onCurrentPageChanging.add(function (sender, options) {
    if(survey.data.year === "1991") {
        // This prevents survey go to the next page
        options.allowChanging = false;
    }
});
Другие вопросы по тегам