Survey Creator V2 for Knockout (Beta)
Survey Creator V2 for Knockout is a visual survey designer / form builder for the Knockout version of SurveyJS.
Although it is powered by Knockout, this library can also be used with Angular, Vue, and jQuery. For React, we ship an individual version: survey-creator-react.
NOTE: This package contains Survey Creator V2. If you are looking for information on V1, refer to the survey-creator directory. Differences between these two versions are described in the following help topic: SurveyJS Creator V2: What's new. For information on how to migrate to V2, refer to the Migration Guide for SurveyJS Creator - from V1 to V2 article.
Use with Knockout, jQuery, or Vanilla JS
<head>
<script src="https://unpkg.com/knockout@3.5.1/build/output/knockout-latest.js"></script>
<link href="https://unpkg.com/survey-core/defaultV2.min.css" type="text/css" rel="stylesheet">
<script src="https://unpkg.com/survey-core/survey.core.min.js"></script>
<script src="https://unpkg.com/survey-knockout-ui/survey-knockout-ui.min.js"></script>
<link href="https://unpkg.com/survey-creator-core/survey-creator-core.min.css" type="text/css" rel="stylesheet">
<script src="https://unpkg.com/survey-creator-core/survey-creator-core.min.js"></script>
<script src="https://unpkg.com/survey-creator-knockout/survey-creator-knockout.min.js"></script>
</head>
<body>
<div id="surveyContainer">
<div id="creatorElement" style="height: 100vh;"></div>
</div>
</body>
const creator = new SurveyCreator.SurveyCreator({ showLogicTab: true });
creator.isAutoSave = true;
creator.showState = true;
creator.saveSurveyFunc = (saveNo, callback) => {
};
creator.render("creatorElement");
Use with Angular
Install the package:
npm install survey-creator-knockout --save
Open the angular.json
file and reference CSS files for SurveyJS (survey-core) and Survey Creator:
{
...
"projects": {
"project-name": {
...
"architect": {
"build": {
...
"options": {
...
"styles": [
...
"node_modules/survey-core/defaultV2.min.css",
"node_modules/survey-creator-core/survey-creator-core.min.css"
],
...
Create a new component and use it in your Angular application:
import { Component, Input, EventEmitter, Output, OnInit } from "@angular/core";
import { SurveyCreator } from "survey-creator-knockout";
@Component({
selector: "creator",
template: `<div class="survey-container contentcontainer codecontainer" id="surveyCreatorContainer">
<div id="creatorElement" style="height: 100vh;"></div>
</div>`
})
export class SurveyCreatorComponent implements OnInit {
@Output() submitSurvey = new EventEmitter<any>();
@Input() result: any;
ngOnInit() {
const creator = new SurveyCreator({ showLogicTab: true });
creator.isAutoSave = true;
creator.showState = true;
creator.saveSurveyFunc = (saveNo, callback) => {
};
creator.render("creatorElement");
}
}
Use with Vue
Install the package:
npm install survey-creator-knockout --save
Create a new component and use it in your Vue application:
<template>
<div id="creatorElement" />
</template>
<script>
import { SurveyCreator } from "survey-creator-knockout";
import "survey-core/defaultV2.min.css";
import "survey-creator-core/survey-creator-core.min.css";
export default {
name: "surveyjs-creator-component",
mounted() {
const creator = new SurveyCreator({ showLogicTab: true });
creator.isAutoSave = true;
creator.showState = true;
creator.saveSurveyFunc = (saveNo, callback) => {
};
creator.render("creatorElement");
}
};
</script>
Use with React
Use the survey-creator-react package instead.
License
The Survey Creator (Form Builder) is not available for free commercial usage. You can find more information about licensing this product on the following page: Licenses.