Bootstrap tagsinput未设置itemValue选项时无法添加对象

Pho*_*beB 7 twitter-bootstrap bootstrap-tags-input

我已经看到这个问题Bootstrap tagsinput添加标签的id和值,但解决方案对我不起作用:

我发现的是,为了让输入框识别我输入的标签,我要么必须有data-role = tagsinput或者调用$("input").tagsinput().

例如.这适用于识别没有数据角色的标签:

$('#meeting-tags').tagsinput();
$('#meeting-tags').tagsinput({
  allowDuplicates: false,
    itemValue: 'id',  // this will be used to set id of tag
    itemText: 'label' // this will be used to set text of tag
});
Run Code Online (Sandbox Code Playgroud)

但这不是:

$('#meeting-tags').tagsinput({
  allowDuplicates: false,
    itemValue: 'id',  // this will be used to set id of tag
    itemText: 'label' // this will be used to set text of tag
});
Run Code Online (Sandbox Code Playgroud)

但是,如果我想通过javascript添加项目,那么只有当我既没有数据角色也没有初始调用时它才会起作用.错误是在未设置itemValue选项时无法添加对象

例如.这有效,但现在它无法识别标签:

$('#meeting-tags').tagsinput({
      allowDuplicates: false,
        itemValue: 'id',  // this will be used to set id of tag
        itemText: 'label' // this will be used to set text of tag
    });
$('#meeting-tags').tagsinput('add', { id: 'tag id', label: 'tag lable' });
Run Code Online (Sandbox Code Playgroud)

但这不是,但现在它再次识别标签:

$('#meeting-tags').tagsinput();
$('#meeting-tags').tagsinput({
      allowDuplicates: false,
        itemValue: 'id',  // this will be used to set id of tag
        itemText: 'label' // this will be used to set text of tag
    });
$('#meeting-tags').tagsinput('add', { id: 'tag id', label: 'tag lable' });
Run Code Online (Sandbox Code Playgroud)

肯定有一种方法可以识别标签和添加项目吗?

小智 7

我遇到了同样的问题(“未设置itemValue”),并检查了插件,即使初始化了标签输入,构造函数中的参数“ options”似乎也未设置。

/**
   * Constructor function
   */
  function TagsInput(element, options) {
Run Code Online (Sandbox Code Playgroud)

我所做的就是像这样在标签中的数据角色定义旁边放置一个随机字符串,以使其在options参数中具有该值:

<input type="text" id="mytags" value="" data-role="tagsinput sometext" />
Run Code Online (Sandbox Code Playgroud)

然后这样做:

var mytagsinput = $('#mytags');

//initialize
 mytagsinput.tagsinput({
              itemValue: 'id',
                itemText: 'text',
            });

//add my tags object
 mytagsinput.tagsinput('add', { id: 1, text: 'mytext});   
Run Code Online (Sandbox Code Playgroud)

它为我工作。希望这可以帮助


小智 0

来自标签输入的文档:这仅在使用字符串作为标签时才可能。当设置 itemValue 选项时,该选项将被忽略。

https://bootstrap-tagsinput.github.io/bootstrap-tagsinput/examples/