Referencing Form Fields in JavaScript
Referencing the Current Form
In the HTML document object model (DOM), the current form is named _sdForm.
This line of code gets a reference to it and puts it in the form variable:
var form = _sdForm;
Accessing Fields
To find the name of a field in the platform:
- Go to > Customization > Objects > {object} > Fields
- Find the label of the field you're interested in
- Get its name from the Field Name column
That name can then be used in the JavaScript code.
All fields can be accessed using the platform's JavaScript functions, as described in the Field Types section below. The most commonly accessed field types (TextField, TextArea, Date, DateTime, Time, and URL) can also be accessed using _sdForm[0]. For example, this line of code gets a reference to the first_name field, and puts it in the variable fName_field:
var fName_field = _sdForm[0].first_name;
Fields have two properties that you can access in JavaScript:
- name: the name of the field
- value: the value of the field
So this line retrieves the value of the field:
var fName = fName_field.value;
As does this longer version:
var fName = _sdForm[0].first_name.value;
Other fields can be accessed using the platform's JavaScript functions.
For a complete list, see the Field Types section below.
Updating Fields
The method used to update a field depends on the field type. All of the methods have the general form:
set...Value(_sdForm, field, value);
Here are examples of some common methods:
setTextFieldValue(_sdForm, ”first_name”, ”Adam”); setPickListValue(_sdForm, ”first_name”, ”Adam”); setMultiPickListValue(_sdForm, ”first_name”, [”new”,”closed”]); // value is an array of strings setRadioButtonValue(_sdForm, ”first_name”, ”Adam”); setCheckboxState(_sdForm, ”first_name”, true); // checked setCheckboxState(_sdForm, ”first_name”, false); // unchecked setLookupValue(_sdForm, "project_number", "123456", "My Project"); // where 123456 is the record ID of the target record // "My Project" is the value of the record locator field(s) for that record
For a complete list, see the Field Type Reference section that follows
Field Type Reference
The following table shows how to access and update the different field types, where:
- _sdForm is a reference to the current form
- field is a string containing the name of the field
Type Getter Setter Auto Number n/a n/a Checkbox getCheckBoxState(_sdForm, field)
Returns: true or falsesetCheckboxState(_sdForm, field, state)
state: true or falseCurrency getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueCustom Control n/a n/a Date _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueDatetime _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueDependent Picklist getPickListSelectedValue(_sdForm, field)
Returns: selected String containing valuesetPickListValue(_sdForm, field, value)
value: String containing new valueEmail Address getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueFile n/a n/a Formula n/a n/a Global Picklist getPickListSelectedValue(_sdForm, field)
Returns: selected String containing valuesetPickListValue(_sdForm, field, value)
value: String containing new valueImage n/a n/a Lookup getLookupFieldValue(_sdForm, field)
Returns: String containing record ID
getLookupFieldText(_sdForm, field)
Returns: String containing the displayed textsetLookupValue(_sdForm, field, value, text)
value: String containing record ID
text: String containing the text to displayMultiple Checkboxes getMultiCheckBoxValue(_sdForm, field, indexes)
indexes: Array of indexes for checked boxes
- Index values start from 0 for first checkbox,
1 for second, etc.setMultiCheckBoxValue(form, field, value)
value: Array of New Values
Example:
setMultiCheckBoxValue(_sdForm, field, [“A”, ”B”] )Multi Object Lookup n/a n/a Multi Select Picklist getMultiPickListSelectedValue(_sdForm, field)
Returns: Array of values
Example: output = [“A”, ”C”]setMultiPickListValue(_sdForm, field, value)
value: Array of New Values
Example:
setMultiPickListValue(_sdForm, field, [“A”, ”B”] )Number _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new value, or a numberNumber with decimals sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new value, or a floatPercentage sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valuePhone/Fax sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valuePicklist getPickListSelectedValue(_sdForm, field)
Returns: selected String containing valuesetPickListValue(_sdForm, field, value)
value: String containing new valueRadio Buttons getRadioButtonValue(_sdForm, field)
Returns: String containing selected valuesetRadioButtonValue(_sdForm, field, value)
value: String containing new value to selectRich Text Area n/a n/a TextArea _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueTextField _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueTime _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new valueURL _sdForm[0].fieldname.value
-or-
getTextFieldValue(_sdForm, field)
Returns: String containing valuesetTextFieldValue(_sdForm, field, value)
value: String containing new value
Global JavaScript Variables
No JavaScript variables are currently defined.