ブートストラップ Tokenfield ライブラリを使用しています。私のプロジェクトには、クリックすることでトークンを編集できるが、入力することはできないというケースがあります。新しいピルを追加するための特別なフォームがあります。入力フォームでの入力を無効にする方法はありますが、クリックしてピルを削除および追加することはできますか?
質問する
1438 次
3 に答える
0
私が取り組んでいるプロジェクトでも同様の要件がありました。すべてのトークンはフォームを使用して定義されています。私たちの要件では、ユーザーはトークンを削除できますが、入力で新しいトークンを編集または追加することはできず、提供されたフォームのみを使用する必要があります。 . 私の「解決策」は少しハックでした: bootstrap-tokenfield は、ユーザーが最終的にトークンに変換されるテキストを入力するための新しい入力を DOM に追加します。この入力を無効にして、ユーザーが新しいトークンを入力するのを効果的に防ぐことができます。
デフォルトでは、新しいトークンは が元の入力の ID でid-tokenfield
ある形式の ID を受け取ります。id
元の入力に ID が指定されていない場合は、代わりに乱数が使用されます。
したがって、この入力を無効にします:
$('#search-tokenfield').prop('disabled', 'disabled');
トークンを編集/削除する機会を維持しながら、ユーザーが新しいトークンを作成できないようにします。私の場合search
、元の入力のIDです。
于 2015-12-02T21:28:18.113 に答える
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;
});
于 2015-11-16T10:22:51.980 に答える