twitter-bootstrap - 如何在 Bootstrap 标签输入过滤器中允许逗号?

标签 twitter-bootstrap bootstrap-tags-input

我正在使用以下代码使用 Bootstrap 标签输入过滤器提交标签,我想允许 逗号 在标签中。请帮忙。

$('.tagsinput').tagsinput({
        maxTags: 15,
        trimValue: true,
        confirmKeys: [13],
        allowDuplicates: false,
        onTagExists: function(item, $tag) {
            alert('Tag already exists')
            $tag.hide.fadeIn();
          }
    });

最佳答案

编辑

自原始写作时间 it looks like two options now exist for this : delimiterdelimiterRegex .所以你应该可以做.tagsinput({ delimiter: '|' }).tagsinput({ delimiterRegex: /\s+/ }) . The default is still , .

原帖

没有选择,因此您必须更改插件的代码。 Line 87 of bootstrap-tagsinput.js, 上 split 特点。您可以将其更改为不同的字符,例如 ;| .如果你想让它更可扩展,你可以添加 splitOn: ','defaultOptions , 然后将第 87 行更改为 var items = item.split(self.options.splitOn); .您可以添加self.options.splitOn &&if上面的声明也是如此,这将防止它在没有什么可拆分的情况下尝试拆分。

因此,代码更改需要如下所示:

// Line 4
var defaultOptions = {
    splitOn: ','
    // ...
};

// Line 86
if (self.options.splitOn && typeof item === "string" && this.$element[0].tagName === 'INPUT') {
  var items = item.split(self.options.splitOn);
  // ...
}

你会想继续使用 confirmKeys: [ 13 ] ,并且您可能想要使用 <select multiple></select>而不是 <input />这样您在执行 $(".tagsinput").val(); 时会得到一个数组而不是逗号分隔的字符串

这里是 an example .

关于twitter-bootstrap - 如何在 Bootstrap 标签输入过滤器中允许逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30140753/

相关文章:

css - Opencart 特色行配置?

jquery - 这段贴在顶部导航栏上的代码有什么问题?

twitter-bootstrap - 仅在 Bootstrap 导航栏折叠时显示链接文本

javascript - 将 Bootstrap 3 Typeahead 与 Bootstrap Tagsinput 集成

jquery - Bootstrap taginput 添加带有 id 和 value 的标签

jquery - ASP.net 中的 MasterPage 和 Bootstrap 更改事件页面

css - Bootstrap 导航栏将社交图标折叠在彼此之上

Javascript 代码在 Blade 模板 Laravel 中无法工作

javascript - Bootstrap 输入标签在达到 maxTags 时显示警报消息

angular - Angular 是否有标签输入组件?