Search results

DropDownListComponent

The DropDownList component contains a list of predefined values, from which the user can choose a single value.

<ejs-dropdownlist></ejs-dropdownlist>

Properties

allowFiltering

boolean

When allowFiltering is set to true, show the filter bar (search box) of the component. The filter action retrieves matched items through the filtering event based on the characters typed in the search TextBox. If no match is found, the value of the noRecordsTemplate property will be displayed.

For more details about the filtering refer to Filtering documentation.

Defaults to false

allowObjectBinding

boolean

Defines whether the object binding is allowed or not in the component.

Defaults to false

cssClass

string

Sets CSS classes to the root element of the component that allows customization of appearance.

Defaults to null

dataSource

{ [key: string]: Object }[] | DataManager | string[] | number[] | boolean[]

Accepts the list items either through local or remote service and binds it to the component. It can be an array of JSON Objects or an instance of DataManager.

Defaults to []

enablePersistence

boolean

Enable or disable persisting component’s state between page reloads. If enabled, following list of states will be persisted.

  1. value

Defaults to false

enableRtl

boolean

Enable or disable rendering component in right to left direction.

Defaults to false

enableVirtualization

boolean

Defines whether to enable virtual scrolling in the component.

Defaults to false

enabled

boolean

Specifies a value that indicates whether the component is enabled or not.

Defaults to true

fields

FieldSettingsModel

/** The fields property maps the columns of the data table and binds the data to the component.

  • text - Maps the text column from data table for each list item.
  • value - Maps the value column from data table for each list item.
  • iconCss - Maps the icon class column from data table for each list item.
  • groupBy - Group the list items with it’s related items by mapping groupBy field.

    <input type="text" tabindex="1" id="list"> </input>
    let customers: DropDownList = new DropDownList({
     dataSource:new DataManager({ url:'http://js.syncfusion.com/demos/ejServices/Wcf/Northwind.svc/' }),
     query: new Query().from('Customers').select(['ContactName', 'CustomerID']).take(5),
     fields: { text: 'ContactName', value: 'CustomerID' },
     placeholder: 'Select a customer'
    });
    customers.appendTo("#list");

Defaults to {text: null, value: null, iconCss: null, groupBy: null}

filterBarPlaceholder

string

Accepts the value to be displayed as a watermark text on the filter bar.

Defaults to null

filterType

FilterType

Determines on which filter type, the component needs to be considered on search action. The FilterType and its supported data types are

FilterType
Description
Supported Types
StartsWith
Checks whether a value begins with the specified value.
String
EndsWith
Checks whether a value ends with specified value.


String
Contains
Checks whether a value contains with specified value.


String

The default value set to StartsWith, all the suggestion items which contain typed characters to listed in the suggestion popup.

Defaults to ‘StartsWith’

floatLabelType

FloatLabelType

Specifies whether to display the floating label above the input element. Possible values are:

  • Never: The label will never float in the input when the placeholder is available.
  • Always: The floating label will always float above the input.
  • Auto: The floating label will float above the input after focusing or entering a value in the input.

Defaults to Syncfusion.EJ2.Inputs.FloatLabelType.Never

footerTemplate

any

Accepts the template design and assigns it to the footer container of the popup list.

For more details about the available template options refer to Template documentation.

Defaults to null

groupTemplate

any

Accepts the template design and assigns it to the group headers present in the popup list.

Defaults to null

headerTemplate

any

Accepts the template design and assigns it to the header container of the popup list.

For more details about the available template options refer to Template documentation.

Defaults to null

htmlAttributes

{ [key: string]: string }

Allows additional HTML attributes such as title, name, etc., and accepts n number of attributes in a key-value pair format.

 <ejs-dropdownlist [htmlAttributes]="htmlAttributes" [fields]="fields" [dataSource]="dataSource"></ejs-dropdownlist>
import { Component, ViewEncapsulation } from '@angular/core';

@Component({
  selector: 'app-root',
  styleUrls: ['app.component.css'],
  templateUrl: 'app.component.html',
  encapsulation: ViewEncapsulation.None
})
export class AppComponent {
  constructor() {}
  public htmlAttributes = { name: "country", placeholder: "Select a country", title: "DropDownList" };
  public fields = { text: 'Name' };
  public dataSource: { [key: string]: Object; }[] = [
  { Name: "Australia", Code: "AU" },
  { Name: "Bermuda", Code: "BM" },
  { Name: "Canada", Code: "CA" },
  { Name: "Cameroon", Code: "CM" },
  { Name: "Denmark", Code: "DK" }
];
}

Defaults to {}

ignoreAccent

boolean

ignoreAccent set to true, then ignores the diacritic characters or accents when filtering.

ignoreCase

boolean

When set to ‘false’, consider the case-sensitive on performing the search to find suggestions. By default consider the casing.

Defaults to true

index

number | null

Gets or sets the index of the selected item in the component.

Defaults to null

itemTemplate

any

Accepts the template design and assigns it to each list item present in the popup. We have built-in template engine which provides options to compile template string into a executable function. For EX: We have expression evolution as like ES6 expression string literals.

Defaults to null

locale

string

Overrides the global culture and localization value for this component. Default global culture is ‘en-US’.

Defaults to ‘en-US’

placeholder

string

Specifies a short hint that describes the expected value of the DropDownList component.

Defaults to null

popupHeight

string | number

Specifies the height of the popup list.

For more details about the popup configuration refer to Popup Configuration documentation.

Defaults to ‘300px’

popupWidth

string | number

Specifies the width of the popup list. By default, the popup width sets based on the width of the component.

For more details about the popup configuration refer to Popup Configuration documentation.

Defaults to ‘100%’

query

Query

Accepts the external Query that execute along with data processing.

 <ejs-dropdownlist [query]="query" [placeholder]="placeholder" [fields]="fields" [dataSource]="dataSource"></ejs-dropdownlist>
import { Component, ViewEncapsulation } from '@angular/core';
import { Query, DataManager, WebApiAdaptor } from '@syncfusion/ej2-data';

@Component({
  selector: 'app-root',
  styleUrls: ['app.component.css'],
  templateUrl: 'app.component.html',
  encapsulation: ViewEncapsulation.None
})
export class AppComponent {
  constructor() {}
  public query = new Query().select(['FirstName', 'EmployeeID']).take(10).requiresCount();
  public placeholder = "Select a name";
  public fields = { text: 'FirstName', value: 'EmployeeID' };
  public dataSource: new DataManager({
    url: 'https://ej2services.syncfusion.com/production/web-services/api/Employees',
    adaptor: new WebApiAdaptor,
    crossDomain: true
  });
}

Defaults to null

readonly

boolean

When set to true, the user interactions on the component are disabled.

Defaults to false

showClearButton

boolean

Specifies whether to show or hide the clear button. When the clear button is clicked, value, text, and index properties are reset to null.

Defaults to false

sortOrder

SortOrder

Specifies the sortOrder to sort the data source. The available type of sort orders are

  • None - The data source is not sorting.
  • Ascending - The data source is sorting with ascending order.
  • Descending - The data source is sorting with descending order.

Defaults to null

text

string | null

Gets or sets the display text of the selected item in the component.

Defaults to null

value

number | string | boolean | any | null

Gets or sets the value of the selected item in the component.

Defaults to null

valueTemplate

any

Accepts the template design and assigns it to the selected list item in the input element of the component. For more details about the available template options refer to Template documentation. We have built-in template engine which provides options to compile template string into a executable function. For EX: We have expression evolution as like ES6 expression string literals.

Defaults to null

width

string | number

Specifies the width of the component. By default, the component width sets based on the width of its parent container. You can also set the width in pixel values.

Defaults to ‘100%’

zIndex

number

specifies the z-index value of the component popup element.

Defaults to 1000

Methods

addItem

Adds a new item to the popup list. By default, new item appends to the list as the last item, but you can insert based on the index parameter.

Parameter Type Description
items { [key: string]: Object }[] | { [key: string]: Object } | string | boolean | number | string[] | boolean[] | number[] Specifies an array of JSON data or a JSON data.
itemIndex (optional) number Specifies the index to place the newly added item in the popup list.

Returns void

clear

Allows you to clear the selected values from the component.

Returns void

destroy

Removes the component from the DOM and detaches all its related event handlers. Also it removes the attributes and classes.

Returns void

filter

To filter the data from given data source by using query

Parameter Type Description
dataSource { [key: string]: Object }[] | DataManager | string[] | number[] | boolean[] Set the data source to filter.
query (optional) Query Specify the query to filter the data.
fields (optional) FieldSettingsModel Specify the fields to map the column in the data table.

Returns void

focusIn

Sets the focus on the component for interaction.

Returns void

focusOut

Moves the focus from the component if the component is already focused.

Returns void

getDataByValue

Gets the data Object that matches the given value.

Parameter Type Description
value string | number | boolean Specifies the value of the list item.

Returns { [key: string]: Object } | string | number | boolean

getItems

Gets all the list items bound on this component.

Returns Element[]

hidePopup

Hides the popup if it is in an open state.

Returns void

hideSpinner

Hides the spinner loader.

Returns void

showPopup

Opens the popup that displays the list of items.

Returns void

showSpinner

Shows the spinner loader.

Returns void

Events

actionBegin

EmitType<Object>

Triggers before fetching data from the remote server.

actionComplete

EmitType<Object>

Triggers after data is fetched successfully from the remote server.

actionFailure

EmitType<Object>

Triggers when the data fetch request from the remote server fails.

beforeOpen

EmitType<Object>

Triggers when the popup before opens.

blur

EmitType<Object>

Triggers when focus moves out from the component.

change

EmitType<ChangeEventArgs>

Triggers when an item in a popup is selected or when the model value is changed by user. Use change event to Configure the Cascading DropDownList

close

EmitType<PopupEventArgs>

Triggers when the popup is closed.

created

EmitType<Object>

Triggers when the component is created.

dataBound

EmitType<Object>

Triggers when data source is populated in the popup list..

destroyed

EmitType<Object>

Triggers when the component is destroyed.

filtering

EmitType<FilteringEventArgs>

Triggers on typing a character in the filter bar when the allowFiltering is enabled.

For more details about the filtering refer to Filtering documentation.

focus

EmitType<Object>

Triggers when the component is focused.

open

EmitType<PopupEventArgs>

Triggers when the popup opens.

select

EmitType<SelectEventArgs>

Triggers when an item in the popup is selected by the user either with mouse/tap or with keyboard navigation.