首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除Tagify插件中的标签?

如何删除Tagify插件中的标签?
EN

Stack Overflow用户
提问于 2020-10-07 14:58:56
回答 3查看 2.7K关注 0票数 1

我需要处理一个动态按钮,它将删除所有的Tagify标记。使用jQuery删除所有标记的文档如下:https://yaireo.github.io/tagify/#section-jquery

文件中说:

代码语言:javascript
复制
// get the Tagify instance assigned for this jQuery input object so its methods could be accessed
var jqTagify = $input.data('tagify');

// bind the "click" event on the "remove all tags" button
$('.tags-jquery--removeAllBtn').on('click', jqTagify.removeAllTags.bind(jqTagify))

考虑到这一点,我尝试了以下几点(在JSFiddle中可以在这里看到),但没有成功:

代码语言:javascript
复制
$(document).on('click', '#btn-test', function()
{
    var $input = $('#input-test').tagify();    
    $input.removeAllTags();
});

我还试图创建一种更接近文档描述的方法:

代码语言:javascript
复制
$(document).on('click', '#btn-test', function()
{
    var $input = $('#input-test');
    var _tagify = $input.data('tagify');

   _tagify.removeAllTags();
});

但在这两种情况下,错误是:

无法读取未定义的属性“removeAllTags”

我不能直接将remove函数绑定到DOM元素,因为按钮将动态创建。

EN

回答 3

Stack Overflow用户

发布于 2021-06-06 23:12:08

这对我来说是这样的,

代码语言:javascript
复制
 var prueba = '"Lic","ffff","asdasd","asdd","asd","dsdsd"';
 var $input = $('input[name=tags]');
 var jqTagify = $input.data('tagify');
 jqTagify.addTags(prueba);
 jqTagify.removeAllTags();
票数 7
EN

Stack Overflow用户

发布于 2021-02-13 20:46:08

$input.data('tagify')将不能工作,并将返回undefined,因为您没有使用jQuery来初始化文档中的说明

代码语言:javascript
复制
$('#input-test').tagify()

以上是所有jQuery插件在应用到DOM节点时的用法--首先实例化一个jQuery对象,然后将jQuery插件应用于它。这样做之后,data属性tagify将可用:$input.data('tagify')

相反,您使用new Tagify(...)像普通版本一样初始化它。

票数 0
EN

Stack Overflow用户

发布于 2022-01-10 19:54:41

在jquery中:

代码语言:javascript
复制
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tagify/3.16.3/tagify.min.css" />
<input name='tags-jquery' id="input-test" >
<button id="btn-test">
  Delete
</button>


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tagify/3.16.3/jQuery.tagify.min.js"></script>

<script>
var $el = $('#input-test').tagify()
var jqTagify = $el.data('tagify')
var btn = $('#btn-test')
btn.on('click', jqTagify.removeAllTags.bind(jqTagify))
</script>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64246801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档