silverstripe-framework/docs/en/02_Developer_Guides/03_Forms/Field_types/01_Common_Subclasses.md
Aaron Carlino 6888901468
NEW: Update docs to be compliant with Gatsby site (#9314)
* First cut

* Temporarily disable composer.json for netlify build

* POC

* New recursive directory query, various refinements

* Fix flexbox

* new styled components plugin

* Apply frontmatter delimiters

* Mobile styles, animation

* Search

* Redesign, clean up

* Nuke the cache, try again

* fix file casing

* Remove production env file

* ID headers

* Move app to new repo

* Add frontmatter universally

* Hide children changelogs

* Add how to title

* New callout tags

* Revert inline code block change

* Replace note callouts

* Fix icons

* Repalce images

* Fix icon

* Fix image links

* Use proper SQL icon
2019-11-18 17:58:33 +13:00

4.8 KiB

title summary
Common FormField type subclasses A table containing a list of the common FormField subclasses.

Common FormField type subclasses

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

Basic

Actions

  • 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 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.

Structure

  • 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.

Files

Relations

  • 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>.

Utility

  • 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.