How to get data count in EJ2 JavaScript Dropdown List
4 Sep 20264 minutes to read
Before the component renders, you can get the total item count by using the actionComplete event with its result arguments. After the component is rendered, you can get the total item count by using the getItems method.
The following example demonstrates how to get the total item count.
var customers = new ej.dropdowns.DropDownList({
//bind the data manager instance to dataSource property
dataSource: new ej.data.DataManager({
url: 'https://services.odata.org/V4/Northwind/Northwind.svc/Customers',
adaptor: new ej.data.ODataV4Adaptor(),
crossDomain: true
}),
//bind the Query instance to query property
query: new ej.data.Query().select(['ContactName']).take(6),
//map the appropriate columns to fields property
fields: { value: 'ContactName'},
//set the placeholder to DropDownList input
placeholder: "Find a customer",
//sort the resulted items
aactionComplete: function (e) {
// get total items count
console.log("Total items count: " + e.result.length);
let element = document.createElement('p');
element.innerText = "Total items count: " + e.result.length;
document.getElementById('event').append(element);
}
});
//render the component
customers.appendTo('#ddlelement');
document.getElementById('btn').onclick = () => {
// get items count using getItems method
console.log("Total items count: " + customers.getItems().length);
let element = document.createElement('p');
element.innerText = "Total items count: " + customers.getItems().length;
document.getElementById('event').append(element);
};<!DOCTYPE html><html lang="en"><head>
<title>Essential JS 2 DropDownList</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Typescript UI Controls">
<meta name="author" content="Syncfusion">
<link href="styles.css" rel="stylesheet">
<link href="https://cdn.syncfusion.com/ej2/34.2.2/ej2-base/styles/material.css" rel="stylesheet">
<link href="https://cdn.syncfusion.com/ej2/34.2.2/ej2-inputs/styles/material.css" rel="stylesheet">
<link href="https://cdn.syncfusion.com/ej2/34.2.2/ej2-dropdowns/styles/material.css" rel="stylesheet">
<script src="https://cdn.syncfusion.com/ej2/34.2.2/dist/ej2.min.js" type="text/javascript"></script>
</head>
<body>
<div id="container" style="margin:0 auto; width:250px;">
<br>
<input type="text" id="ddlelement">
<div style="margin: 50px">
<button id="btn" class="e-btn e-control"> Get items</button>
</div>
<p id="event"> </p>
</div>
<script>
var ele = document.getElementById('container');
if(ele) {
ele.style.visibility = "visible";
}
</script>
<script src="index.js" type="text/javascript"></script>
</body></html>