1

ブートストラップ Tokenfield ライブラリを使用しています。私のプロジェクトには、クリックすることでトークンを編集できるが、入力することはできないというケースがあります。新しいピルを追加するための特別なフォームがあります。入力フォームでの入力を無効にする方法はありますが、クリックしてピルを削除および追加することはできますか?

4

3 に答える 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 に答える