Overview

Web Grid provides 7 built-in editor types plus a custom editor option for specialized input needs.

Editor Types
 

Text Editor

Standard text input for string values.

OptionTypeDefaultDescription
maxLengthnumber-Maximum character count
placeholderstring-Placeholder text when empty
patternstring-Regex pattern for validation
inputMode'text' | 'numeric' | 'email' | 'tel' | 'url''text'Virtual keyboard hint on mobile
editStartSelection'selectAll' | 'cursorAtStart' | 'cursorAtEnd''selectAll'Cursor position when entering edit mode
Text Editor
 

Number Editor

Numeric input with min/max constraints and step control.

OptionTypeDefaultDescription
minnumber-Minimum allowed value
maxnumber-Maximum allowed value
stepnumber1Increment/decrement step
decimalPlacesnumber-Fixed decimal places
allowNegativebooleantrueAllow negative numbers
Number Editor
 

Checkbox Editor

Boolean toggle for true/false values. Can be customized to use different true/false values.

OptionTypeDefaultDescription
trueValueunknowntrueValue to store when checked
falseValueunknownfalseValue to store when unchecked
Checkbox Editor
 

Select Editor

Dropdown selection from a list of options.

OptionTypeDescription
optionsEditorOption[]Static list of options
loadOptions(row, field) => Promise<EditorOption[]>Dynamic options loader
optionsLoadTrigger'immediate' | 'oneditstart' | 'ondropdownopen'When to load dynamic options
allowEmptybooleanAllow null/empty selection
emptyLabelstringLabel for empty option (default: "-- Select --")
valueMemberstringProperty for value (default: "value")
displayMemberstringProperty for display text (default: "label")
Select Editor
 

Combobox Editor

Searchable dropdown - type to filter options. Combines text input with dropdown selection.

OptionTypeDescription
optionsEditorOption[]Options to filter from
searchMemberstringProperty for searchable text (falls back to displayMember)
iconMemberstringProperty for icon/emoji
subtitleMemberstringProperty for subtitle/description
groupMemberstringProperty for grouping options
disabledMemberstringProperty for disabled state
Combobox Editor
 

Date Editor

Date picker with configurable format and constraints.

OptionTypeDescription
minDateDate | stringMinimum selectable date
maxDateDate | stringMaximum selectable date
dateFormatstringDisplay format: 'YYYY-MM-DD', 'DD.MM.YYYY', etc.
outputFormat'date' | 'iso' | 'timestamp'Storage format: Date object, ISO string, or timestamp
Date Editor
 

Autocomplete Editor

Async search dropdown - type to trigger server search. Ideal for large datasets.

OptionTypeDefaultDescription
onSearchCallback(query, row, signal?) => Promise<EditorOption[]>-Async search function (required)
initialOptionsEditorOption[][]Options to show before searching
minSearchLengthnumber1Min characters before search triggers
debounceMsnumber300Debounce delay in milliseconds
multiplebooleanfalseAllow multiple selections
maxSelectionsnumber-Max items when multiple=true
Autocomplete Editor
 

Custom Editor

Take full control with a custom editor callback.

Context Type
 
Custom Editor
 

Shared Option Properties

These properties work with select, combobox, and autocomplete editors:

OptionTypeDescription
valueMemberstringProperty for value (default: "value")
displayMemberstringProperty for display text (default: "label")
searchMemberstringProperty for searchable text
iconMemberstringProperty for icon/emoji
subtitleMemberstringProperty for subtitle
groupMemberstringProperty for grouping
disabledMemberstringProperty for disabled state
onselect(option, row) => voidCalled when option is selected
renderOptionCallback(option, context) => stringCustom HTML rendering for options
noOptionsTextstringText when no options found (default: from grid.labels)
searchingTextstringText while searching (autocomplete only, default: from grid.labels)
Custom Option Rendering
 

Callback Alternatives

Instead of member properties, you can use callbacks for more control:

CallbackTypeOverrides
getValueCallback(option) => string | numbervalueMember
getDisplayCallback(option) => stringdisplayMember
getSearchCallback(option) => stringsearchMember
getIconCallback(option) => stringiconMember
getSubtitleCallback(option) => stringsubtitleMember
getDisabledCallback(option) => booleandisabledMember
getGroupCallback(option) => stringgroupMember
Callback Example
 

Important Notes

  • EditorOption type: { value: string | number | boolean, label: string, [key: string]: unknown }
  • Callbacks override members: If both callback and member are set, callback takes priority
  • AbortSignal: Autocomplete provides a signal for request cancellation
  • Custom editors: Must call either commit() or cancel()
  • Dynamic options: Use loadOptions for row-specific option lists