[
{
title : 'Page Title',
properties : [
{
name : 'Property Name',
label : 'Property Label',
description : 'Property Description', //optional, default is NULL
type : 'Property Type',
value : 'Property Value', //optional, default is null
required : 'Mandatory or Not', //optional, 'true' or 'false', default is 'false'
//… more attributes …
}, //… more fields …
],
validators : [ //optional
//… properties custom validators …
],
buttons : [ //optional
//… custom properties page buttons …
]
}, //… more properties page …
] |






columns : [
{key : 'key', label : 'Columns'}, // first column will used to populate row label
{key : 'value', label : 'Value', required: 'true'},
{key : 'label', label : 'Label', required: 'true'},
{key : 'width', label : 'Width'}
],
rows : [
{label : 'Username', required: 'true'},
{label : 'Status'},
{label : 'Message'},
{label : 'Date'}
],
value : [
{'label' : 'Username'},
{'label' : 'Status'},
{'label' : 'Message'},
{'label' : 'Date', 'value' : 'dateCreated'}
] |

![]()









{
regex_validation : '^[a-zA-Z0-9_]+$',
validation_message : 'Invalid ID!!'
} |
{
control_field: 'chartType',
control_value: 'bar|xy|area|bubble|line|candlestick|ohlc',
control_use_regex: 'true',
} |
options : [
{value: 'value1', label : 'Value 1'},
{value: 'value2', label : 'Value 2'},
{value: 'value3', label : 'Value 3'}
] |
options_ajax : '[CONTEXT_PATH]/web/json/console/app[APP_PATH]/datalist/options' |
options_ajax_on_change : 'type' options_ajax : '[CONTEXT_PATH]/web/json/app[APP_PATH]/plugin/org.joget.plugin.enterprise.SamplePlugin/service?action=getJson' |
options_callback: 'DatalistBuilder.getColumnOptions' |
options_script: 'var tempArray = [{\'label\':\'\',\'value\':\'\'}];
for(ee in DatalistBuilder.availableColumns){ var temp = {
\'label\' : UI.escapeHTML(DatalistBuilder.availableColumns[ee].label),
\'value\' : DatalistBuilder.availableColumns[ee].id};
tempArray.push(temp);}tempArray;' |
DatalistBuilder.getColumnOptions(properties)
Can be used by plugins related to Datalist Builder. It return all available columns based on binder configuration.