Почему в Yii2 событие submit у формы происходит дважды?
То есть по сути вызов события beforeSubmit происходит с задержкой.
С чем это может быть связано? И можно ли это как-то пофиксить?
beforeSubmit это лишь одно из событий вызываемых в процессе отправки формы в yii2. Пользователь нажимает кнопку сабмита - происходит валидация формы на js, и только после ее успешного прохождения генерируется событие beforeSubmit. Соотвественно валидация так же занимает какое-то время, это и приводит к такому результату. Если Вы хотите блокировать сабмит-кнопку делайте это при возникновении события beforeValidate
Еще один вариант по решению данной проблемы описан здесь https://github.com/yiisoft/yii2/issues/10498