Modify new Question

Please read the license agreement if you want to use Survey Creator widget in your app(s). Visit our buy page to find out developer license(s) price.
Modify new created question

                        //Add a tag property
Survey.JsonObject.metaData.addProperty("question", "tag");
//Make name and tag properties read-only
Survey.JsonObject.metaData.findProperty("question", "name").readOnly = true;
Survey.JsonObject.metaData.findProperty("question", "tag").readOnly = true;


var creatorOptions = { };
var creator = new SurveyCreator.SurveyCreator("creatorElement", creatorOptions);

var questionCounter = 1;
//Set the name property different from the default value 
//and set the tag property to a generated GUID value.
creator.onQuestionAdded.add(function(sender, options){
    var q = options.question;
    var t = q.getType(); = "Question" + t[0].toUpperCase() + t.substring(1) + questionCounter;
    q.tag = guid();
    questionCounter ++;

function guid() {
  function s4() {
    return Math.floor((1 + Math.random()) * 0x10000)
  return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
    s4() + '-' + s4() + s4() + s4();

<!DOCTYPE html>
    <title>Modify new created question, Survey Creator Example</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src=""></script>
<script src=""></script>
    <script src="" type="text/javascript" charset="utf-8"></script>
    <script src="" type="text/javascript" charset="utf-8"></script>
    <!-- Uncomment to enable Select2
    <script src=""></script>
    <link href="" rel="stylesheet" />
    <script src=""></script>
    <link href="" type="text/css" rel="stylesheet" />
    <script src=""></script>
    <link rel="stylesheet" href="">
    <link rel="stylesheet" href="./index.css">

        <div id="surveyContainer">
        <div id="creatorElement"></div>

<script type="text/javascript" src="./index.js"></script>


Use onQuestionAdded event

Use this event to modify a new created question in the designer as you want.

You may make any property readonly by setting its "readOnly" attribute to true. It is always false by default.

Survey.JsonObject.metaData.findProperty("question", "name").readOnly = true;