Вызов 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;
}
});