Version 4 supported
This version of Silverstripe CMS is still supported though will not receive any additional features. Go to documentation for the most recent stable version.

Common formField type subclasses

This is a high level overview of available FormField subclasses. An automatically generated list is available on the Silverstripe CMS API documentation.



  • FormAction: Button element for forms, both for <input type="submit"> and <button>.

Formatted input

  • ConfirmedPasswordField: Two masked input fields, checks for matching passwords.
  • CurrencyField: Text field, validating its input as a currency. Limited to US-centric formats, including a hardcoded currency symbol and decimal separators. See MoneyField for a more flexible implementation.
  • DateField: Represents a date in a single input field, or separated into day, month, and year. Can optionally use a calendar popup.
  • DatetimeField: Combined date- and time field.
  • EmailField: Text input field with validation for correct email format according to RFC 2822.
  • GroupedDropdownField: Grouped dropdown, using <optgroup> tags.
  • HtmlEditorField: A WYSIWYG editor interface.
  • DBMoneyField: A form field that can save into a DBMoney database field.
  • NumericField: Text input field with validation for numeric values.
  • OptionsetField: Set of radio buttons designed to emulate a dropdown.
  • SelectionGroup: SelectionGroup represents a number of fields which are selectable by a radio button that appears at the beginning of each item.
  • TimeField: Input field with time-specific, localised validation.


  • CompositeField: Base class for all fields that contain other fields. Uses <div> in template, but doesn't necessarily have any visible styling.
  • FieldGroup attached in CMS-context.
  • FieldList: Basic container for sequential fields, or nested fields through CompositeField.
  • TabSet: Collection of fields which is rendered as separate tabs. Can be nested.
  • Tab: A single tab inside a TabSet.
  • ToggleCompositeField: Allows visibility of a group of fields to be toggled.



  • CheckboxSetField: Displays a set of checkboxes as a logical group.
  • TreeDropdownField: Dropdown-like field that allows you to select an item from a hierarchical AJAX-expandable tree.
  • TreeMultiselectField: Represents many-many joins using a tree selector shown in a dropdown-like element.
  • GridField: Displays a SS_List in a tabular format. Versatile base class which can be configured to allow editing, sorting, etc.
  • ListboxField: Multi-line listbox field, through <select multiple>.


  • DatalessField - Base class for fields which add some HTML to the form but don't submit any data or save it to the database.
  • HeaderField: Renders a simple HTML header element.
  • HiddenField - Renders a hidden input field.
  • LabelField: Simple label tag. This can be used to add extra text in your forms.
  • LiteralField: Renders arbitrary HTML into a form.