В моей настраиваемой функции выделения для плагина проверки jQuery я хочу делать разные вещи, в зависимости от того, была ли проверка инициирована blur()
недопустимого элемента (через $('form').validate().element($element)
), или форма был отправлен. (Функция выделения вызывается, когда элемент недействителен. Если это происходит в форме submit, последняя прерывается.)
Насколько я понимаю, метод, который называется «onsubmit» внутри плагин просто вызывает метод element()
для каждого элемента формы, никакие переменные, указывающие, откуда пришел вызов, не передаются, и я не нашел ни одной доступной переменной или метода валидатора, который я мог бы использовать из своего выделения функция, чтобы узнать, что инициировало проверку. Надеюсь, я просто что-то упустил, поэтому, если у кого-то есть подсказка ...:)
(В качестве альтернативы, может быть, есть какой-то внешний способ узнать, находится ли форма в процессе отправки? Я действительно не могу используйте размытие в качестве индикатора, так как оба могут происходить одновременно. Я мог бы, вероятно, установить какую-то переменную с помощью второго события onsubmit и отключить его через полсекунды или около того, но мне это кажется немного беспорядочным ...)
Edit: я собрал небольшой пример, чтобы проиллюстрировать свою проблему: https://jsfiddle.net/b7L6d9kn/ - Здесь попытка отправки и размытие поля ввода меняют цвет фона на красный. Как сделать так, чтобы он стал фиолетовым только после попытки отправки, но все еще подтверждался размытием?