1

所以我使用了一个名为 bootstrap-tag 的库(不要与 bootstrap-tags <-plural 混淆)。这是它的存储库:https ://github.com/fdeschenes/bootstrap-tag

我正在尝试从其他输入字段构建标记将具有的值,然后通过单击按钮将该标记添加到标记输入字段。

在此处输入图像描述

我首先尝试查看是否可以访问元素的原型并从那里获取 add 方法。但我只能得到一个 jquery 元素的原型。我不包含代码的唯一原因是因为我使用的是 Ember.js,并且不希望这可能使我遇到的实际问题复杂化。如果包含代码对我有益,请告诉我,我会将其添加到问题中。

在其中输入时,标签输入字段可以完美地工作。如何从字段外部构建值并添加标签?

我打算使用的添加方法也在 3rd 方库中的这一行: https ://github.com/fdeschenes/bootstrap-tag/blob/master/js/bootstrap-tag.js#L136

4

1 回答 1

1

这个库没有为此提供 API。但你可以轻松破解它;)

<input id="test-input" />

var tags = new $.fn.tag.Constructor(document.getElementById('test-input'), {});
tags.add('Hack');
tags.add('it');
tags.add('easily');

或者你可以这样做:

var tagsElement = $('.tags-input').tag(options);

addTagToElement(tagsElement, 'Whatever');   

function addTagToElement(el, newTag) {
   var e = $.Event('keydown');
   e.keyCode = 13;
   el.next().val(newTag);
   el.next().trigger(e)
}

这个库在第一个定义的旁边创建一个占位符输入,甚至听keydown ..所以addTagToElement片段只是模拟这个..

于 2015-09-26T16:50:28.653 回答