Я думаю это не сложно. Надо время найти, чтобы код написать.
Тут важный момент кол-во городов на сайте. Если их много (например, вся Россия) , то это будет вызывать задержку при открывании страница поиска, так как городов очень много.
Поэтому в таком случае как раз лучше использовать input с ajax, когда при начале ввода названия показываются подходящие города для выбора. Так сделано по умолчанию и это удобно, быстро работает.