追加のライブラリを使用しても問題がない場合は、BootstrapがJQueryのヘルプを少し使用して問題を解決します。
簡単なJSFiddleを用意しました。ここで、実際の動作を確認できます。
http://jsfiddle.net/sgmonda/Tjbys/8/
私が行ったことは、テキスト入力と、<ul>
選択したタグが表示されるリストを準備することです。ブートストラップを使用すると、入力に書き込むときにオートコンプリートが可能になるため、デフォルトのオートコンプリートをオフにする必要があります。
<input type="text" id="tags" autocomplete="off" />
<ul id="selected-tags"></ul>
次に、いくつかのJQuery行を追加して、Bootstrapが入力をオートコンプリートし、選択したタグを<ul>
リストに追加できるようにする必要があります。
$('#tags').typeahead({
source: ['elem1', 'elem2', 'elem3', 'otherElem', 'oneMore'],
updater: function (item) {
$('#selected-tags').append('<li>' + item + '</li>');
}
});
いつでもリストを読んで、ユーザーがどの要素を選択したかを知ることができます。
var selectedTags = [];
$('#selected-tags').each(function(){
selectedTags.push($(this).text());
});
編集
タグの重複を避け、削除の可能性を追加したい場合:
http://jsfiddle.net/sgmonda/JMepQ/3/