https://github.com/aehlke/tag-itこのプラグインを使用していますが、定義済みのタグを設定するのに問題があります。
したがって、デフォルトで選択したいタグの配列がある場合:
function PredifinedTagsSet(tags) {
for(var i = 0; i < tags.length; i++) {
var el = "";
el = "<li class=\"tagit-choice\">\n";
el += tags[i] + "\n";
el += "<a class=\"close\">x</a>\n";
el += "<input type=\"hidden\" style=\"display:none;\" value=\""+tags[i]+"\" name=\"item[tags][]\">\n";
el += "</li>\n";
var el = "";
el = "<li class=\"tagit-choice ui-widget-content ui-state-default ui-corner-all tagit-choice-editable\"><span class=\"tagit-label\">";
el += tags[i];
el += "</span><a class=\"tagit-close\"><span class=\"text-icon\">×</span><span class=\"ui-icon ui-icon-close\"></span></a></li>";
$("#myTags").prepend(el);
}}
私のタグコンテナ:
<div class="tags-container">
<input type="hidden" name="tags" id="mySingleField" value=""/>
<label>Tags:</label>
<ul id="myTags">
</ul>
</div>
そしてjQueryにタグを付けます:
$(document).ready(function () {
$('#myTags').tagit({
availableTags: @Html.Raw(Json.Encode(@ViewBag.Tags)),
singleField: true,
singleFieldNode: $('#mySingleField')
});
});
JavaScriptを使用してデータを設定しようとしまし <ul id="myTags"></ul>
た <input type="hidden" name="tags" id="mySingleField" value=""/>
が、タグ バーからタグを削除できないか、値が重複しています。
var hiddenTagsValue = "";
if(tags.length > 0){
hiddenTagsValue += tags[0];
if(tags.length > 1)
for(var i = 1; i < tags.length; i++) {
hiddenTagsValue += ", ";
hiddenTagsValue += tags[i];
}
}
$("#mySingleField").val(tags[]);