2017-02-22 27 views
1

Я столкнулся с ошибкой «Ошибка синтаксиса, нераспознанное выражение: label [for =]» после обновления до jQuery 3.1.1 из старой версии jQuery (1.10.2). Я также обновил плагин jQuery.validate до версии 1.15.1.Проверка jQuery Синтаксическая ошибка, нераспознанное выражение: label [for =]

Это похоже на другие типы вопросов «Синтаксическая ошибка, непризнанное выражение: метка ...», но достаточно уникальная, чтобы оправдать собственную запись. Несколько запросов в Интернете для этого сообщения не привели меня к решению, на которое я наткнулся (ниже).

Ошибка возникает при нажатии на любое поле формы после выбора значения Да/Нет из раскрывающегося списка, которое слегка изменяет интерфейс.

ответ

2

В моем случае ошибка запускалась в onfocusout механизма проверки jQuery. Это было вызвано тем, что элемент фокуса элемента/поля не имел идентификатора (сообщение об ошибке почти делает это понятным, если вы думаете об этом достаточно сложно).

Фокус с потерей поля был несущественным триггером (через селектор классов jQuery) на относительно простой форме. Поле не требовало какой-либо проверки.

Добавление идентификатора в поле устраняет проблему.

Альтернативным решением было бы использовать функцию ignore: плагина jQuery Validation.

 Смежные вопросы

  • Нет связанных вопросов^_^