2015-11-16 6 views
0

Я использую загрузочную библиотеку Tokenfield. У меня есть случай в моем проекте, говорящий, что я могу редактировать токены, нажимая, но не набрав, у меня есть специальная форма для добавления новых таблеток. Есть ли способ отключить ввод текста в форме ввода, но все же есть доступ к удалению и добавлению таблеток, нажав?Отключить ввод ввода

+0

Можете ли вы показать эту специальную форму или свой код? –

+0

это простой popover с выпадающим и кнопка. После выбора нового элемента и нажатия кнопки я использую метод setTokens из этой библиотеки. – Forin

ответ

0

Вы можете установить showAutocompleteOnFocus для фокусировки мыши так нет никакой необходимости использовать клавиатуру для добавления маркеров или удалить маркер, пример кода: -

$('#tokenfield').tokenfield({ 
    autocomplete: { 
     source: ['red','blue','green','yellow','violet','brown','purple','black','white'], 
     delay: 100 
    }, 
    showAutocompleteOnFocus: true 
}); 

$("#tokenfield").keydown(function(key) { 
    return false; 
}); 
+0

Несомненно, это нехорошее решение для меня. Пользователь в моем проекте не может вводить ничего в поле. – Forin

+0

У меня есть обновленный код. Повторите попытку, используя это. –

+0

он все еще позволяет печатать. – Forin

0

У меня было подобное требование в проекте я работаю on, все маркеры определяются с использованием формы, наше требование диктует, что пользователь может удалить токен, но не редактировать или добавлять новые токены во входные данные, только используя предоставленную форму. Мое «решение» было немного взломанным: bootstrap-tokenfield добавляет новый ввод в DOM для ввода пользователем текста, который в конечном итоге преобразуется в токены, вы можете отключить этот вход и эффективно запретить пользователю вводить новые токены.

По умолчанию новый токен получает идентификатор в формате id-tokenfield, где id - это идентификатор исходного ввода. Если на исходном входе не указано id, тогда вместо этого используется случайное число.

Так отключить этот вход:

$('#search-tokenfield').prop('disabled', 'disabled'); 

не позволяет пользователю создавать новые маркеры, сохраняя при этом возможность редактировать/удалять маркеры. В моем случае search - это идентификатор исходного ввода.

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