Lua Scripting Resources

Important Update to Custom Scripting

SurveyGizmo's CustomScript Action now supports the LUA programming language.


Legacy Custom Scripting Language Deprecation Plans 

  1. New accounts (created after October 29, 2018) will only have the option to use Lua in scripts.
  2. As of October 29, 2018 Custom Scripting Actions will default to Lua as the scripting type in the Custom Scripting Action for accounts created before this date. You will be able to switch to the Legacy Custom Scripting; though we highly encourage using Lua.
  3. In the long term, Legacy Custom Scripting Actions will be switched to read-only. Read-only scripts will continue to function; you will just be prevented from editing. The exact date on this is to be determined; we will send notifications well ahead of time.


 Go to our Legacy Scripting Documentation.

While SurveyGizmo is one of the most flexible survey tools around, we get requests for customizations that are not available out of the box. This is where JavaScript and Custom Scripting can save the day. If you have scripting chops you can use the JavaScript action or the Custom Scripting action to achieve the survey of your dreams.


[article("bodfy")]

This function populates the response value of the given question. If you wish to set the value of an other textbox use the setothervalue function.

Parameters*DescriptionRequired
questionIDthe ID of the questiontrue
valuethe value you wish to settrue

*Provide parameters in the above order.

For Hidden Values, Textboxes, Essays, Radio Buttons, Dropdown Menus, Sliders, and Image Select (Single Choice) the value parameter is defined as a "string."

For Checkboxes and Drag & Drop the value parameter must be specified as an array.

To set the value of a Dropdown Menu Lists, Radio Button Grids, and Checkbox Grids the questionID parameter should be specified as the ID of the grid's row.

See this function in action in an example survey.

Unsupported Question Types

Example

Single-Answer Questions

Single-answer questions, which include the below-listed questions can be set by passing a string in the value parameter.

Questions that can be set following this pattern:

The following example will set the value of a question to be "yes." 

setvalue(2,"Yes")

Multi-Answer Questions

Multi-answer questions, which include the below-listed questions, can be set by passing an array.

Questions that can be set following this pattern:

Next, let's set the value of a Checkbox question. Let's say our Checkbox question has reporting values "Cats", "Dogs", "Horses", and "Birds" Here, we tell our script to check the "Cats" and "Dogs" options.

options = {"Cats","Dogs"}
setvalue(2,options)

For Drag & Drop Ranking questions you'll need to specify an array using the option skus as keys like so:

setvalue(2,{[10001] = 4, [10002] = 3, [10003] = 2, [10004] = 1})

Net Promoter®, NPS®, NPS Prism®, and the NPS-related emoticons are registered trademarks of Bain & Company, Inc., Satmetrix Systems, Inc., and Fred Reichheld. Net Promoter Score℠ and Net Promoter System℠ are service marks of Bain & Company, Inc., Satmetrix Systems, Inc., and Fred Reichheld.