У меня есть набор пользовательских форм PHP в наборе страниц Drupal (не сгенерированных через API форм Drupal - я не буду объяснять, почему я не просто использую Drupal для этих форм здесь - немного сложнее) с вводом текста поля не позволяют вводить с клавиатуры - но позволяют копировать и вставлять. Они правильно заполняются значениями по умолчанию, но просто не позволяют вводить. Исключением является текстовое поле, в котором включен TinyMCE - здесь можно вводить текст, если только скрипт TinyMCE не загружен, и в этом случае текстовое поле также запрещает тип.
Проблема возникла после настройки Jquery Update, чтобы разрешить загрузку самой последней библиотеки 1.4.2, если только на странице не указано «admin» или «edit» в URL, в этом случае текущая библиотека Jquery Update 2.x будет загружен, чтобы оставить все поведения админки работоспособными.
В процессе исключения я обнаружил, что проблема связана с плагином JStree, который я использую для некоторых вложенных списков флажков в моих пользовательских формах. Когда отключено, ввод текста в порядке. Странно, проблема возникает в полях вне контейнера, где включен JStree (с помощью определенного селектора), и даже влияет на поля в других пользовательских формах PHP на разных страницах, где нет контролируемых элементов JStree. Я попытался добавить классы как для ввода текста, так и для контейнеров форм, чтобы имитировать те, которые используются в сгенерированных формами Drupal, как можно ближе, но безрезультатно. Drupal формы остаются нетронутыми этим странным конфликтом. Я проверил проблему в урезанной форме в MAMP, вне Drupal, и поля ввода текста не зависят от наличия в той же форме, что и список флажков JStree.
Если это кому-то покажется знакомым или кто-то может предложить метод для дальнейшего устранения проблемы, я был бы очень признателен.