TIG*_*GER 8 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();
}
});
Run Code Online (Sandbox Code Playgroud)
从原始写作的时间开始,现在看起来有两个选项:delimiter和delimiterRegex.所以你应该可以做.tagsinput({ delimiter: '|' })或.tagsinput({ delimiterRegex: /\s+/ }).默认仍然是,.
没有选项,所以你必须更改插件的代码.bootstrap-tagsinput.js的第87行在,字符上分裂.您可以将其更改为不同的角色,例如;或|.如果你想让它更可扩展你可以添加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);
// ...
}
Run Code Online (Sandbox Code Playgroud)
你会想要继续使用confirmKeys: [ 13 ],你可能想要使用a <select multiple></select>而不是一个,<input />这样你就可以得到一个数组,而不是逗号分隔的字符串$(".tagsinput").val();
这是一个例子.
| 归档时间: |
|
| 查看次数: |
6358 次 |
| 最近记录: |