【发布时间】:2015-06-02 03:45:46
【问题描述】:
我正在使用 jquery.tagsinput,并且希望能够粘贴以逗号或空格分隔的电子邮件地址列表。使用类似https://github.com/xoxco/jQuery-Tags-Input/issues/22 的东西,但在我按 Enter 之前它不会添加它们 - 尝试触发 keypress Enter 事件但它不起作用。模糊事件也没有运气(如下所示)。有什么想法吗?
Flat-UI 标签基于这个库,我正在尝试实现非常相似的行为。
var tidyTags = function(e) {
var tags = (e.tags).split(/[ ,]+/);
var target = $(e.target);
for (var i = 0, z = tags.length; i<z; i++) {
var tag = $.trim(tags[i]);
if (!target.tagExist(tag)) {
target.addTag(tag);
}
}
$('#' + target[0].id + '_tag').trigger('focus');
//This doesn't work.
target.blur();
};
$("#tagsinput").tagsInput({
onAddTag : function(tag){
if(tag.indexOf(',') > 0) {
tidyTags({target: '#tagsinput', tags : tag});
}
},
});
【问题讨论】:
-
那么你想要什么??粘贴后就想创建标签??
-
@GuruprasadRao 是的,只要我粘贴它,现在它不会创建标签,直到我按 Enter 或点击退出输入
-
好的。现在看到
tagsinput的基本功能是在您专注或点击进入时创建标签!即使你点击空间它也不会创建tags!!你注意到了吗?? -
是的,在这种情况下,我添加了 split(/[ ,]+/) 来解决这个问题
-
方法
onAddTag将在您从textbox中的blur或当您点击enter时调用!所以没用!!你需要类似tagsinput的按键事件!!
标签: jquery tags paste eventtrigger jquery-tags-input