Я когда слышу такие советы, я понимаю, что сам советчик с вероятностью 99% в реальности такого не писал. Потому что иначе он представлял бы объем работы по отладке такого плагина. И о том, что между состояниями "я тут нафигачил на коленке, вроде даже работает" и "можно использовать в продакшене" - огромная дистанция.
Ну теперь не 99 процентов уверенности, а 100.
За 50 строк кода действительно только и получится, что спрятать нативный контрол и нарисовать вместо него хтмлный заменитель. Но в реальности эта поделка будет неюзабельна от слова совсем.
Нормальный контрол должен реагировать на мышь и клавиатуру, на ховер и фокус; уметь дизейблиться, обновляться при добавлении/удалении элементов; открываться/закрываться через скрипты и сам генерировать события; отличать десктоп от мобилы и так далее.
Даже в относительно минималистичном варианте кода там будет не 50 строк, а раз в 10-20 больше.
Я знаю
Chosen https://harvesthq.github.io/chosen/
Select2 https://select2.org/
Если не ошибаюсь, второй когда-то появился как форк первого, но уже довольно давно развивается самостоятельно.
Достаточно ли они легкие - судить не берусь.
Если существует что-то лучше и легче - самому было бы интересно узнать.