Topic: mdb-select too slow for big lists
jankirchhoff asked 5 years ago
I have a big userlist (10000+ entries) in an admin login (value=userid, option text = user name) in a searchable select box (using mdb-select)
Expected behavior
should just work like a normal, plain html select box, just in a nice layout
Actual behavior
does work as expected, but calling $('.mdb-select').materialSelect(); causes a 4-5 second delay. This is really annoying in my admin login, expecially when I have multiple selects. If I use a "normal" html select pulldown, it works without any delay.
My first impression is that this is caused by the DOM operations when creating the mdb select which matches my own experiences with doing large operations in the DOM. I did not look into the materialSelect() yet, before I start that and try to understand how it works exactly: has anyone had and solved this problem before?
I think a promising approach would be to add an option to generate only the "li"-list for the mdb pulldown for the first maybe 100 (?) entries based on the text entered in the search field and not draw all the other elements. Right now the materialSelect() generates a big "ul" list of all options and hides "li" elements them based on the text entered in the search field...
As far as I understand, for a really long ist it should always be more efficient to filter in the original html selectbox and generate the mdb list only for the first XX matches, right?
Is there any addon/plugin that helps me with my problem or do I need to try to solve it on my own?
Jan
FREE CONSULTATION
Hire our experts to build a dedicated project. We'll analyze your business requirements, for free.
Open
- User: Free
- Premium support: No
- Technology: MDB jQuery
- MDB Version: 4.8.10
- Device: PC
- Browser: Chrome
- OS: Linux + Windows
- Provided sample code: No
- Provided link: No
Mateusz Łubianka staff commented 5 years ago
Hi @jankirchhoff,
I will create a task with this issue and our team will check this. Thank you for reporting this.
Best,
jankirchhoff commented 5 years ago
Great, where can I monitor for updates if your team starts to work on this?
Mateusz Łubianka staff commented 5 years ago
All of updates in MDB you can find here: https://mdbootstrap.com/docs/jquery/changelog/
Best,