Кто-нибудь знает хороший пример кода, используя виджет автозаполнения jQuery UI, который может автозаполнять слова в середине текстового поля, а не только автозаполнять слово только в конце?автозаполнение слов в середине (jQuery UI)
Я использую виджет автозаполнения jquery UI для компонента, который поддерживает запись нескольких тегов. Это похоже на редактор тегов переполнения стека, но проще: нет никакого причудливого форматирования в раскрывающемся списке автозаполнения, никаких фоновых изображений «тегов» в окне редактирования. Я начал с jQuery UI Autocomplete Multiple sample и модифицировал его.
Работает нормально, за исключением того, что автозаполнение не работает для тегов в середине строки с несколькими тегами. Например, если я напечатаю C Fortran
, а затем положил каретку сразу после C
и напечатал +
, я бы ожидал увидеть C++
в списке автозаполнения, но вместо этого я снова вижу Fortran
.
Вот код до сих пор: http://jsfiddle.net/WCfyB/4/
Это та же самая проблема описывается autocomplete in middle of text (like Google Plus), но проблема в этом вопросе было проще, потому что он может рассчитывать на пустой @
в тексте, сигнализировать, чтобы показать автозаполнения , В моем случае я не могу просто полагаться на текст - мне действительно нужно выяснить, где находится каретка и автозаполнять слово, где находится карет.
Я мог бы создать это самостоятельно с помощью каретки или другого плагина, но задавался вопросом, был ли уже установлен JQuery-UI-образец, который я мог бы использовать, не изобретая другое колесо, особенно если есть конкретные случаи, зависящие от браузера беспокоиться о. В идеале он будет вести себя следующим образом: всякий раз, когда пользователь помещает каретку внутрь или в конец тега (где теги всегда разделены 1 + пробелами), для этого тега отображается автозаполнение. Знать хороший образец?