Child pages
  • JSField

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
{div:style=}
Wiki Markup
Div
styledisplay:none

DO

NOT

EDIT

THE

CONTENT

OF

THIS

PAGE

DIRECTLY

(EXCEPT

INSIDE

THE

DIV

BELOW

WITH

ID=DESCRIPTION),

UNLESS

YOU

KNOW

WHAT

YOU'RE

DOING.


THE

STRUCTURE

OF

THE

CONTENT

IS

VITAL

IN

BEING

ABLE

TO

AUTO

UPDATE

THE

CONTENT

THROUGH

THE

DOC

GENERATOR.

\\ \\ Enter additional information related to this



Enter additional information related to this 'class'

inside

the

\

{div}

macro

with

'id=description'

{div} {div:id=description}{div}\\ {table:id=|class=servoy sReturnTypes}{tr:style=height: 30px;}{th}Extends{th}{tr}{tr}{td}{span:class=sWordList}[JSComponent]{span}{td}{tr}{table}\\ {table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Constants Summary{th}{tr}{tbody}{tr}{td}[Number]{td}{td}[#CHECKS] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#COMBOBOX] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#PASSWORD] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#RADIOS] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#TEXT_AREA] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#TEXT_FIELD] Constant for specifying the display type of a JSField.{td}{tr}{tbody}{table}\\ {table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Property Summary{th}{tr}{tbody}{tr}{td}[String]{td}{td}[#dataProviderID] The dataprovider of the component.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#displayType] The type of display used by the field.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#enabled] The enable state of the component, default true.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#format] The format that should be applied when displaying the data in the component.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#height] The height in pixels of the component.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#name] The name of the component.{td}{tr}{tbody}{tbody}{tr}{td}[JSMethod]{td}{td}[#onAction] The method that is executed when the component is clicked.{td}{tr}{tbody}{tbody}{tr}{td}[JSMethod]{td}{td}[#onDataChange] Method that is executed when the data in the component is successfully changed.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#placeholderText] The text that is displayed in field when the field doesn't have a text value.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#styleClass] The name of the style class that should be applied to this component.{td}{tr}{tbody}{tbody}{tr}{td}[JSValueList]{td}{td}[#valuelist] The valuelist that is used by this field when displaying data.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#visible] The visible property of the component, default true.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#width] The width in pixels of the component.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#x] The x coordinate of the component on the form.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#y] The y coordinate of the component on the form.{td}{tr}{tbody}{table}\\ {table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Method Summary{th}{tr}{tbody}{tr}{td}[JSTitle]{td}{td}[#getTitle]\() Get title label for the field or label.{td}{tr}{tbody}{table}\\ {table:id=constant|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Constants Details{th}{tr}{tbody:id=CHECKS}{tr:id=name}{td}h6.CHECKS{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the field to checkbox. The field will show a checkbox, or a list of checkboxes if the valuelist property is also set.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES); vlist.customValues = "one\ntwo\nthree\nfour"; var chk = form.newField('my_table_options', JSField.CHECKS, 10, 40, 100, 50); chk.valuelist = vlist; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=COMBOBOX}{tr:id=name}{td}h6.COMBOBOX{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the field to combobox.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}

Div
iddescription



HTML Table
id
classservoy sReturnTypes
Colgroup Tag
Col
colspan2
width100%
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Extends
Table Row (tr)
Table Cell (td)
Span
classsWordList
JSComponent



HTML Table
id
classservoy sSummary
Colgroup Tag
Col
width80px
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Constants Summary
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
CALENDAR
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
CHECKS
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
COMBOBOX
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
PASSWORD
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
RADIOS
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
TEXT_AREA
Constant for specifying the display type of a JSField.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
TEXT_FIELD
Constant for specifying the display type of a JSField.



HTML Table
id
classservoy sSummary
Colgroup Tag
Col
width80px
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Property Summary
Table Row (tr)
Table Cell (td)
String
Table Cell (td)
dataProviderID
The dataprovider of the component.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
displayType
The type of display used by the field.
Table Row (tr)
Table Cell (td)
Boolean
Table Cell (td)
enabled
The enable state of the component, default true.
Table Row (tr)
Table Cell (td)
String
Table Cell (td)
format
The format that should be applied when displaying the data in the component.
Table Row (tr)
Table Cell (td)
String
Table Cell (td)
name
The name of the component.
Table Row (tr)
Table Cell (td)
JSMethod
Table Cell (td)
onAction
The method that is executed when the component is clicked.
Table Row (tr)
Table Cell (td)
JSMethod
Table Cell (td)
onDataChange
Method that is executed when the data in the component is successfully changed.
Table Row (tr)
Table Cell (td)
Boolean
Table Cell (td)
visible
The visible property of the component, default true.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
x
The x coordinate of the component on the form.
Table Row (tr)
Table Cell (td)
Number
Table Cell (td)
y
The y coordinate of the component on the form.



HTML Table
id
classservoy sSummary
Colgroup Tag
Col
width80px
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Method Summary
Table Row (tr)
Table Cell (td)
JSTitle
Table Cell (td)
getTitle()
Get title label for the field or label.



HTML Table
idconstant
classservoy sDetail
Colgroup Tag
Col
colspan2
width100%
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Constants Details
Table Body (tbody)
idCALENDAR
Table Row (tr)
idname
Table Cell (td)

CALENDAR

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to calendar. The field will show a formatted date and will have a button which
pops up a calendar for date selection.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var cal = form.newField('my_table_date', JSField.CALENDAR, 10, 10, 100, 20);
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idCHECKS
Table Row (tr)
idname
Table Cell (td)

CHECKS

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to checkbox. The field will show a checkbox, or a list of checkboxes if the valuelist
property is also set.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES);
vlist.customValues = "one\ntwo\nthree\nfour";
var chk = form.newField('my_table_options', JSField.CHECKS, 10, 40, 100, 50);
chk.valuelist = vlist;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idCOMBOBOX
Table Row (tr)
idname
Table Cell (td)

COMBOBOX

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to combobox.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES);
vlist.customValues = "one\ntwo\nthree\nfour";
var cmb = form.newField('my_table_options', JSField.COMBOBOX, 10, 100, 100, 20);
cmb.valuelist = vlist;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idPASSWORD
Table Row (tr)
idname
Table Cell (td)

PASSWORD

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
fiels to password. The field will allow the user to enter passwords, masking the typed
characters.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var pwd = form.newField('my_table_text', JSField.PASSWORD, 10, 250, 100, 20);
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idRADIOS
Table Row (tr)
idname
Table Cell (td)

RADIOS

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to radio buttons. The field will show a radio button, or a list of them if
the valuelist property is also set.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES);
vlist.customValues = "one\ntwo\nthree\nfour";
var 
cmb
radio = form.newField('my_table_options', JSField.
COMBOBOX
RADIOS, 10, 
100
280, 100, 
20
50);
cmb
radio.valuelist = vlist;
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=PASSWORD}{tr:id=name}{td}h6.PASSWORD{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the fiels to password. The field will allow the user to enter passwords, masking the typed characters.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var pwd
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idTEXT_AREA
Table Row (tr)
idname
Table Cell (td)

TEXT_AREA

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to text area. The field will show text on multiple lines.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var tarea = form.newField('my_table_text', JSField.
PASSWORD
TEXT_AREA, 10, 
250
400, 100, 
20
50);
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=RADIOS}{tr:id=name}{td}h6.RADIOS{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the field to radio buttons. The field will show a radio button, or a list of them if the valuelist property is also set.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES); vlist.customValues = "one\ntwo\nthree\nfour"; var radio =
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idTEXT_FIELD
Table Row (tr)
idname
Table Cell (td)

TEXT_FIELD

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Constant for specifying the display type of a JSField. Sets the display type of the
field to text field. The field will show regular text on a single line.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var tfield = form.newField('my_table_
options
text', JSField.
RADIOS
TEXT_FIELD, 10, 
280
460, 100, 
50
20);
radio.valuelist = vlist; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=TEXT_AREA}{tr:id=name}{td}h6.TEXT_AREA{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the field to text area. The field will show text on multiple lines.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var tarea
Table Row (tr)
classlastDetailRow
Table Cell (td)
 



HTML Table
idproperty
classservoy sDetail
Colgroup Tag
Col
colspan2
width100%
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Property Details
Table Body (tbody)
iddataProviderID
Table Row (tr)
idname
Table Cell (td)

dataProviderID

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The dataprovider of the component.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
String
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
// Normally the dataprovider is specified when a component is created.
var field = form.newField('
my
parent_table_text', JSField.TEXT_
AREA
FIELD, 10, 
400
40, 100, 
50
20);
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=TEXT_FIELD}{tr:id=name}{td}h6.TEXT_FIELD{td}{tr}{tr:id=des}{td}{div:class=sIndent}Constant for specifying the display type of a JSField. Sets the display type of the field to text field. The field will show regular text on a single line.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var tfield

// But it can be modified later if needed.
field.dataProviderID = 'parent_table_id';
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
iddisplayType
Table Row (tr)
idname
Table Cell (td)

displayType

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The type of display used by the field. Can be one of CALENDAR, CHECKS,
COMBOBOX, HTML_AREA, IMAGE_MEDIA, PASSWORD, RADIOS, RTF_AREA, TEXT_AREA,
TEXT_FIELD, TYPE_AHEAD, LIST_BOX, MULTISELECT_LISTBOX or SPINNER.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
// The display type is specified when the field is created.
var cal = form.newField('my_table_
text
date', JSField.
TEXT_FIELD
CALENDAR, 10, 
460
10, 100, 20);
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}\\ {table:id=property|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Property Details{th}{tr}{tbody:id=dataProviderID}{tr:id=name}{td}h6.dataProviderID{td}{tr}{tr:id=des}{td}{div:class=sIndent}The dataprovider of the component.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // Normally the dataprovider is specified when a component is created.
// But it can be changed if needed.
cal.dataProviderID = 'my_table_text';
cal.displayType = JSField.TEXT_FIELD;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idenabled
Table Row (tr)
idname
Table Cell (td)

enabled

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The enable state of the component, default true.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Boolean
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 
40
10, 100, 20);
// But it can be modified later if needed.
field.
dataProviderID
enabled = 
'parent_table_id'; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=displayType}{tr:id=name}{td}h6.displayType{td}{tr}{tr:id=des}{td}{div:class=sIndent}The type of display used by the field. Can be one of CALENDAR, CHECKS, COMBOBOX, HTML\_AREA, IMAGE\_MEDIA, PASSWORD, RADIOS, RTF\_AREA, TEXT\_AREA, TEXT\_FIELD, TYPE\_AHEAD, LIST\_BOX, MULTISELECT\_LISTBOX or SPINNER.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // The display type is specified when the field is created. var cal = form.newField('my_table_date', JSField.CALENDAR, 10, 10, 100, 20); // But it can be changed if needed. cal.dataProviderID = 'my_table_text'; cal.displayType = JSField.TEXT_FIELD; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=enabled}{tr:id=name}{td}h6.enabled{td}{tr}{tr:id=des}{td}{div:class=sIndent}The enable state of the component, default true.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300); var field = form.newField('parent_table_text', JSField.TEXT_FIELD,
false;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idformat
Table Row (tr)
idname
Table Cell (td)

format

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The format that should be applied when displaying the data in the component.
There are different options for the different dataprovider types that are assigned to this field.
For Integer fields, there is a display and an edit format, using http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html and the max (string) length can be set.
For Text/String fields, there are options to force uppercase,lowercase or only numbers. Or a mask can be set that restrict the input the pattern chars can be found here: http://docs.oracle.com/javase/7/docs/api/javax/swing/text/MaskFormatter.html
A mask can have a placehoder (what is shown when there is no data) and if the data must be stored raw (without literals of the mask). A max text length can also be set to force
the max text length input, this doesn't work on mask because that max length is controlled with the mask.
For Date fields a display and edit format can be set by using a pattern from here: http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html, you can also say this must behave like a mask (the edit format)
A mask only works with when the edit format is exactly that mask (1 char is 1 number/char), because for example MM then only 2 numbers are allowed MMM that displays the month as a string is not supported as a mask.
Some examples are "dd-MM-yyyy", "MM-dd-yyyy", etc.
The format property is also used to set the UI Converter, this means that you can convert the value object to something else before it gets set into the field, this can also result in a type change of the data.
So a string in scripting/db is converted to a integer in the ui, then you have to set an integer format.
This property is applicable only for types: TEXT_FIELD, COMBOBOX, TYPE_AHEAD, CALENDAR and SPINNER.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
String
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var field = form.newField('my_table_number', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.
enabled
format = 
false; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=format}{tr:id=name}{td}h6.format{td}{tr}{tr:id=des}{td}{div:class=sIndent}The format that should be applied when displaying the data in the component. There are different options for the different dataprovider types that are assigned to this field. For Integer fields, there is a display and an edit format, using http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html and the max (string) length can be set. For Text/String fields, there are options to force uppercase,lowercase or only numbers. Or a mask can be set that restrict the input the pattern chars can be found here: http://docs.oracle.com/javase/7/docs/api/javax/swing/text/MaskFormatter.html A mask can have a placehoder (what is shown when there is no data) and if the data must be stored raw (without literals of the mask). A max text length can also be set to force the max text length input, this doesn't work on mask because that max length is controlled with the mask. For Date fields a display and edit format can be set by using a pattern from here: http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html, you can also say this must behave like a mask (the edit format) A mask only works with when the edit format is exactly that mask (1 char is 1 number/char), because for example MM then only 2 numbers are allowed MMM that displays the month as a string is not supported as a mask. Some examples are "dd\-MM\-yyyy", "MM\-dd\-yyyy", etc. The format property is also used to set the UI Converter, this means that you can convert the value object to something else before it gets set into the field, this can also result in a type change of the data. So a string in scripting/db is converted to a integer in the ui, then you have to set an integer format. This property is applicable only for types: TEXT\_FIELD, COMBOBOX, TYPE\_AHEAD, CALENDAR and SPINNER.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var field = form.newField('my_table_number', JSField.TEXT_FIELD, 10, 10, 100, 20); field.format = '$#.00'; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=height}{tr:id=name}{td}h6.height{td}{tr}{tr:id=des}{td}{div:class=sIndent}The height in pixels of the component.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20); application.output('original width: ' + field.width); application.output('original height: ' + field.height); field.width = 200; field.height = 100; application.output('modified width: ' + field.width); application.output('modified height: ' + field.height); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=name}{tr:id=name}{td}h6.name{td}{tr}{tr:id=des}{td}{div:class=sIndent}The name of the component. Through this name it can also accessed in methods.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table', null, false, 620, 300); var label = form.newLabel('Label', 10, 10, 150, 150); label.name = 'myLabel'; // Give a name to the component. forms['someForm'].controller.show() // Now use the name to access the component. forms['someForm'].elements['myLabel'].text = 'Updated text'; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=onAction}{tr:id=name}{td}h6.onAction{td}{tr}{tr:id=des}{td}{div:class=sIndent}The method that is executed when the component is clicked.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSMethod]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var doNothingMethod = form.newMethod('function doNothing() { application.output("Doing nothing."); }'); var onClickMethod = form.newMethod('function onClick(event) { application.output("I was clicked at " + event.getTimestamp()); }'); var onDoubleClickMethod = form.newMethod('function onDoubleClick(event) { application.output("I was double-clicked at " + event.getTimestamp()); }'); var onRightClickMethod = form.newMethod('function onRightClick(event) { application.output("I was right-clicked at " + event.getTimestamp()); }'); // At creation the button has the 'doNothing' method as onClick handler, but we'll change that later. var btn = form.newButton('I am a button', 10, 40, 200, 20, doNothingMethod); btn.onAction = onClickMethod; btn.onDoubleClick = onDoubleClickMethod; btn.onRightClick = onRightClickMethod; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=onDataChange}{tr:id=name}{td}h6.onDataChange{td}{tr}{tr:id=des}{td}{div:class=sIndent}Method that is executed when the data in the component is successfully changed.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSMethod]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table', null, false, 620, 300); var onDataChangeMethod = form.newMethod('function onDataChange(oldValue, newValue, event) { application.output("Data changed from " + oldValue + " to " + newValue + " at " + event.getTimestamp()); }'); var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20); field.onDataChange = onDataChangeMethod; forms['someForm'].controller.show(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=placeholderText}{tr:id=name}{td}h6.placeholderText{td}{tr}{tr:id=des}{td}{div:class=sIndent}The text that is displayed in field when the field doesn't have a text value.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} field.placeholderText = 'Search'; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=styleClass}{tr:id=name}{td}h6.styleClass{td}{tr}{tr:id=des}{td}{div:class=sIndent}The name of the style class that should be applied to this component. When defining style classes for specific component types, their names must be prefixed according to the type of the component. For example in order to define a class names 'fancy' for fields, in the style definition the class must be named 'field.fancy'. If it would be intended for labels, then it would be named 'label.fancy'. When specifying the class name for a component, the prefix is dropped however. Thus the field or the label will have its styleClass property set to 'fancy' only.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300); var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20); var style = solutionModel.newStyle('myStyle','field.fancy { background-color: yellow; }'); form.styleName = 'myStyle'; // First set the style on the form. field.styleClass = 'fancy'; // Then set the style class on the field. {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=valuelist}{tr:id=name}{td}h6.valuelist{td}{tr}{tr:id=des}{td}{div:class=sIndent}The valuelist that is used by this field when displaying data. Can be used with fields of type CHECKS, COMBOBOX, RADIOS and TYPE\_AHEAD.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSValueList]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var vlist = solutionModel.newValueList('options', JSValueList.CUSTOM_VALUES); vlist.customValues = "one\ntwo\nthree\nfour"; var cmb = form.newField('my_table_options', JSField.COMBOBOX, 10, 100, 100, 20); cmb.valuelist = vlist; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=visible}{tr:id=name}{td}h6.visible{td}{tr}{tr:id=des}{td}{div:class=sIndent}The visible property of the component, default true.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
'$#.00';
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idname
Table Row (tr)
idname
Table Cell (td)

name

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The name of the component. Through this name it can also accessed in methods.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
String
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table', null, false, 620, 300);
var label = form.newLabel('Label', 10, 10, 150, 150);
label.name = 'myLabel'; // Give a name to the component.
forms['someForm'].controller.show()
// Now use the name to access the component.
forms['someForm'].elements['myLabel'].text = 'Updated text';
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idonAction
Table Row (tr)
idname
Table Cell (td)

onAction

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The method that is executed when the component is clicked.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
JSMethod
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var doNothingMethod = form.newMethod('function doNothing() { application.output("Doing nothing."); }');
var onClickMethod = form.newMethod('function onClick(event) { application.output("I was clicked at " + event.getTimestamp()); }');
var onDoubleClickMethod = form.newMethod('function onDoubleClick(event) { application.output("I was double-clicked at " + event.getTimestamp()); }');
var onRightClickMethod = form.newMethod('function onRightClick(event) { application.output("I was right-clicked at " + event.getTimestamp()); }');
// At creation the button has the 'doNothing' method as onClick handler, but we'll change that later.
var btn = form.newButton('I am a button', 10, 40, 200, 20, doNothingMethod);
btn.onAction = onClickMethod;
btn.onDoubleClick = onDoubleClickMethod;
btn.onRightClick = onRightClickMethod;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idonDataChange
Table Row (tr)
idname
Table Cell (td)

onDataChange

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Method that is executed when the data in the component is successfully changed.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
JSMethod
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var form = solutionModel.newForm('
printForm
someForm', 'db:/example_data/parent_table', null, false, 620, 300);
var onDataChangeMethod = form.newMethod('function onDataChange(oldValue,
400, 300
 newValue, event) { application.output("Data changed from " + oldValue + " to " + newValue + " at " + event.getTimestamp()); }');
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.
visible
onDataChange = 
false; {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=width}{tr:id=name}{td}h6.width{td}{tr}{tr:id=des}{td}{div:class=sIndent}The width in pixels of the component.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20); application.output('original width: ' + field.width); application.output('original height: ' + field.height); field.width = 200; field.height = 100; application.output('modified width: ' + field.width); application.output('modified height: ' + field.height); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=x}{tr:id=name}{td}h6.x{td}{tr}{tr:id=des}{td}{div:class=sIndent}The x coordinate of the component on the form.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
onDataChangeMethod;
forms['someForm'].controller.show();
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idvisible
Table Row (tr)
idname
Table Cell (td)

visible

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The visible property of the component, default true.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Boolean
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.visible = false;
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idx
Table Row (tr)
idname
Table Cell (td)

x

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The x coordinate of the component on the form.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
application.output('original location: ' + field.x + ', ' + field.y);
field.x = 90;
field.y = 90;
application.output('changed location: ' + field.x + ', ' + field.y);
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=y}{tr:id=name}{td}h6.y{td}{tr}{tr:id=des}{td}{div:class=sIndent}The y coordinate of the component on the form.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
Table Row (tr)
classlastDetailRow
Table Cell (td)
 
Table Body (tbody)
idy
Table Row (tr)
idname
Table Cell (td)

y

Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
The y coordinate of the component on the form.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
Number
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
application.output('original location: ' + field.x + ', ' + field.y);
field.x = 90;
field.y = 90;
application.output('changed location: ' + field.x + ', ' + field.y);
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}\\ {table:id=function|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Method Details{th}{tr}{tbody:id=getTitle}{tr:id=name}{td}h6.getTitle{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSTitle]{span}{span:style=font-weight: bold;}getTitle{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get title label for the field or label.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSTitle]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
Table Row (tr)
classlastDetailRow
Table Cell (td)
 



HTML Table
idfunction
classservoy sDetail
Colgroup Tag
Col
colspan2
width100%
Col
Table Head (thead)
Table Row (tr)
styleheight: 30px;
Table Head (th)
colspan2
Method Details
Table Body (tbody)
idgetTitle
Table Row (tr)
idname
Table Cell (td)

getTitle

Table Row (tr)
idsig
Table Cell (td)
Span
stylemargin-right: 5px;
JSTitle
Span
stylefont-weight: bold;
getTitle
Span
()
Table Row (tr)
iddes
Table Cell (td)
Div
classsIndent
Get title label for the field or label.
Table Row (tr)
idret
Table Cell (td)

Returns

Div
classsIndent
JSTitle
Table Row (tr)
idsam
Table Cell (td)

Sample

Div
classsIndent
Code Block
languagejavascript
var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table');
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 1);
field.getTitle().text = 'Parent table'
forms['someForm'].controller.show()
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}
Table Row (tr)
classlastDetailRow
Table Cell (td)