Search results

Get the total count of data when remote data bind with DropDownList in Vue DropDownList component

02 Feb 2023 / 2 minutes to read

Before component rendering, you can get the total items count by using actionComplete  event with its result arguments.

After rendering this component, you can get the total items count by using getItems method.

The following example demonstrate how to get the total items count.

Copied to clipboard
  <div id="app">
    <div id='container' style="margin:50px auto 0; width:250px;">
        <ejs-dropdownlist id='dropdownlist' ref='dropdown' placeholder='Select a customer' :actionComplete='actionComplete' :dataSource='dataSource' :query='query' :fields='fields'></ejs-dropdownlist>
    <div style='padding: 50px 0'>
      <button id='first' class="e-control e-btn" v-on:click="getItems"> Get items</button>
    <p id='event'> </p>
import Vue from 'vue';
import { DropDownListPlugin } from "@syncfusion/ej2-vue-dropdowns";
import { DataManager,Query,ODataV4Adaptor } from "@syncfusion/ej2-data";
export default {
  data (){
    return {
        query :  new Query().from('Customers').select(['ContactName', 'CustomerID']).take(6),
        dataSource : new DataManager({
          url: '',
          adaptor: new ODataV4Adaptor,
          crossDomain: true
        fields: { text: 'ContactName', value: 'CustomerID' }
   methods: {
        actionComplete: function (e) {
            // initially result contains 6 items
            console.log("Before modified the result: " + e.result.length);
            // remove first 2 items from result.
            e.result.splice(0, 2);
            // now displays the result count is 4.
        console.log("After modified the result: " + e.result.length);
    getItems: function(e) {
        // get items count using getItems method
        console.log("Total items count: " + this.$refs.dropdown.getItems().length);
        var element = document.createElement('p');
        element.innerText = "Total items count: " + this.$refs.dropdown.getItems().length;
@import "../../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../../node_modules/@syncfusion/ej2-inputs/styles/material.css";
@import "../../node_modules/@syncfusion/ej2-vue-dropdowns/styles/material.css";