Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
Code Block |
---|
[ { title : 'Page Title', properties : [ { name : 'Property Name', label : 'Property Label', type : 'Property Type', required : 'Mandatory or Not', //… more property attributes … }, //… more properties … ], validators : [ //… properties custom validators … ] }, //… more properties page … ] |
...
...
...
...
...
...
...
...
...
{
name : 'Property Name',
label : 'Property Label',
description : 'Property Description', //optional, default is NULL
type : 'readonly',
value : 'Property Value', //optional , default is empty string
required : 'true', //optional, boolean value, default is false
}
{
size : '50', //optional , integer value, default is NULL, only for text field and password field
maxlength : '50', //optional, integer value, default is NULL, only for text field and password field
rows : '50', //optional, integer value, default is NULL, only for text area and html editor
cols : '50', //optional, integer value, default is NULL , only for text area and html editor
regex_validation : '^\[a-zA-Z0-9_\|KB:a-zA-Z0-9_\]+$', //optional, default is NULL Wiki Markup
validation_message : 'Error!!' //optional, default is NULL
}
...
...
{
size : '10', //optional, integer value, default is 4, only for multi select box
options : [//is optional to use this attribute or options_ajax
{value: 'value1', label : 'Value 1'},
{value: 'value2', label : 'Value 2'},
{value: 'value3', label : 'Value 3'}
],
options_ajax_on_change : 'property1', //optional, this property name and value will passed as HTTP request parameter to the URL defined in the options_ajax property
options_ajax : 'URL to load options JSON' //optional, URL which returns the JSON Array of a set of Objects that have value & label attribute
}
...
...
{
name : 'Property Name',
type : 'hidden',
value : 'Property Value'
}
...
...
{
name : 'Property Name',
label : 'Property Label',
description : 'Property Description', //optional, default is NULL
type : 'grid',
columns : [// 2 types of column, with and without options attribute
{key : 'col1', label : 'Col 1'},
{key : 'col2', label : 'Col 2',
options :[
{value :'option1', label : 'Option 1'},
{value :'option2', label : 'Option 2'}
]
},
],value:[ //Optional. Default is null.
...
The name of each sub-object must match a key from the columns object above. (e.g. col1 below matches col1 in one of the columns:key names above)
{ col1 : 'abc', col2 : 'option1' },{col1 : 'def', col2 : 'option2'}
],
required : 'true', //optional, boolean value, default is false
}
...
...
{
options_ajax_on_change : 'property1', //optional, this property name and value will passed as HTTP request parameter to the URL defined in the options_ajax property
options_ajax : '[KB:CONTEXT_PATH]/web/property/json/getElements?classname= org.joget.apps.form.model.FormLoadElementBinder', //Load plugin list based on class name given
url : '[KB:CONTEXT_PATH]/web/property/json[KB:APP_PATH]/getPropertyOptions', //Load plugin properties
keep_value_on_change : 'true' //optional, boolean value, default is false. To keep current configuration for the next selected element
}
Attributes for AJAX
{
type : 'ajax',
url : 'URL to validate properties page value' , // All properties in the same page will send to this url to validate, URL return a JSON Object with status (success or fail) & message (JSONArray of String) attribute
default_error_message : 'Error in this page!!' //optional, default is null
}