Добавьте проверку к вашему методу onClick (). OnChange () для текстового поля запускается через определенный период времени или после отмены выбора компонента. Если вы отмените выбор своего компонента, нажав на кнопку, для меня будет вполне естественным сначала получить onClik, а затем onChange. Нет способа контролировать (насколько я знаю) эти события, кроме как на стороне сервера.
Читать это!
Помните, что вы разрабатываете веб-приложение, а не настольное приложение. И даже если разработка приложений zk может выглядеть очень похоже на настольные приложения, они не являются таковыми и имеют свои ограничения.