Difference between revisions of "Referencing Form Fields in JavaScript"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 9: Line 9:
# Get its name from the '''Field Name''' column
# Get its name from the '''Field Name''' column


That name can then be used in the JavaScript code. For example, this line of code gets a reference to the <tt>first_name</tt> field, and puts it in the variable <tt>elem</tt>:
That name can then be used in the JavaScript code.
 
Fields of type <tt>TextField</tt>, <tt>TextArea</tt>, <tt>Date</tt>, <tt>DateTime</tt>, <tt>Time</tt>, and <tt>URL</tt> can be accessed using <tt>_sdForm[0]</tt>. For example, this line of code gets a reference to the <tt>first_name</tt> field, and puts it in the variable <tt>elem</tt>:
:{|
:{|
<pre>var elem = _sdForm[0].first_name;</pre>
<pre>var elem = _sdForm[0].first_name;</pre>
Line 17: Line 19:
:* <tt>name</tt>: the name of the field
:* <tt>name</tt>: the name of the field
:* <tt>value</tt>: the value of the field
:* <tt>value</tt>: the value of the field
These field types can be updated in JavaScript:
:{| border="1"  cellpadding="6" cellspacing="0"
| <tt>TextField</tt> ||  <tt>TextArea</tt> || <tt>Date</tt> || <tt>DateTime</tt> || <tt>Time</tt> || <tt>URL</tt>
|}


The method used to update a field depends on the field type. All of the methods have the general form:
The method used to update a field depends on the field type. All of the methods have the general form:

Revision as of 01:21, 27 June 2013

In the HTML document object model (DOM), the current form is named _sdForm. This line of code gets a reference to the current form and puts in the form variable:

var form = document._sdForm;

To find the name of field:

  1. Go to GearIcon.png > Customization > Objects > {object} > Fields
  2. Find the label of the field you're interested in
  3. Get its name from the Field Name column

That name can then be used in the JavaScript code.

Fields of type TextField, TextArea, Date, DateTime, Time, and URL can 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 elem:

var elem = _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

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 the different methods:

setTextFieldValue(_sdForm, ”first_name”, ”Adam”);
setPickListValue(_sdForm, ”first_name”, ”Adam”);
setMultiPickListValue(_sdForm, ”first_name”, [”new”,”closed”]); // array of string
setRadioButtonValue(_sdForm, ”first_name”, ”Adam”);
setCheckboxState((_sdForm, ”first_name”, true);  // checked
setCheckboxState((_sdForm, ”first_name”, false); // unchecked