# Dropdown | tablefilter v0.1.15 API Document

    import {Dropdown} from 'tablefilter/src/modules/dropdown.js'

public class | source

# Dropdown

#### Extends:

Feature → Dropdown

## Constructor Summary

Public Constructor
public | constructor (tf: Object) Dropdown UI component |

## Member Summary

Public Members
public | activateSlcTooltip : * |
public | enableSlcResetFilter : * |
public | initialized : boolean |
public | isCustom : * |
public | multipleSlcTooltip : * |
public | nonEmptyText : * |
public | opts : * |
public | optsTxt : * |
public | slcInnerHtml : * |

## Method Summary

Public Methods
public | addFirstOption (slc: Object): * Add drop-down header option |
public | addOptions (colIndex: Number, slc: Object, isLinked: Boolean, excludedOpts: Array) Add drop-down options |
public | build (colIndex: Number, isLinked: Boolean, isExternal: Boolean, extSlcId: String) Build drop-down filter UI |
public | destroy () |
public | init (colIndex: Number, isExternal: Boolean, container: DOMElement) Initialize drop-down filter |
public | onSlcChange () |
public | onSlcFocus (e: *) |
public | selectOptions (colIndex: Number, values: Array) Select filter options programmatically |

## Inherited Summary

From class Feature
public | config : * |
public | emitter : * |
public | enabled : * |
public | feature : * |
public | initialized : boolean |
public | tf : * |
public | destroy () |
public | disable () |
public | enable () |
public | init () |
public | isEnabled (): * |
public | reset () |

## Public Constructors

### public constructor(tf: Object) source

Dropdown UI component

#### Override:

Feature#constructor

#### Params:

Name | Type | Attribute | Description
tf | Object |  | TableFilter instance

## Public Members

### public activateSlcTooltip: * source

### public enableSlcResetFilter: * source

### public initialized: boolean source

#### Override:

Feature#initialized

### public isCustom: * source

### public multipleSlcTooltip: * source

### public nonEmptyText: * source

### public opts: * source

### public optsTxt: * source

### public slcInnerHtml: * source

## Public Methods

### public addFirstOption(slc: Object): * source

Add drop-down header option

#### Params:

Name | Type | Attribute | Description
slc | Object |  | Select DOM element

#### Return:

*

### public addOptions(colIndex: Number, slc: Object, isLinked: Boolean, excludedOpts: Array) source

Add drop-down options

#### Params:

Name | Type | Attribute | Description
colIndex | Number |  | Column index
slc | Object |  | Select Dom element
isLinked | Boolean |  | Enable linked refresh behaviour
excludedOpts | Array |  | Array of excluded options

### public build(colIndex: Number, isLinked: Boolean, isExternal: Boolean, extSlcId: String) source

Build drop-down filter UI

#### Params:

Name | Type | Attribute | Description
colIndex | Number |  | Column index
isLinked | Boolean |  | Enable linked refresh behaviour
isExternal | Boolean |  | Render in external container
extSlcId | String |  | External container id

### public destroy() source

#### Override:

Feature#destroy

### public init(colIndex: Number, isExternal: Boolean, container: DOMElement) source

Initialize drop-down filter

#### Override:

Feature#init

#### Params:

Name | Type | Attribute | Description
colIndex | Number |  | Column index
isExternal | Boolean |  | External filter flag
container | DOMElement |  | Dom element containing the filter

### public onSlcChange() source

### public onSlcFocus(e: *) source

#### Params:

Name | Type | Attribute | Description
e | * |  |

### public selectOptions(colIndex: Number, values: Array) source

Select filter options programmatically

#### Params:

Name | Type | Attribute | Description
colIndex | Number |  | Column index
values | Array |  | Array of option values to select