如何在标签功能中禁用并重新启用“单击”及其功能?

时间:2013-08-09 17:07:28

标签: javascript jquery tags

我在jquery中编写了以下代码,以便在点击.fly li时使所选.fly li的内容出现在tag_handler中,它可以正常工作。

我的问题是如何在点击一次后禁用点击标签,并在删除tag_handler中的标签后重新启用。感谢。

function add_tag(that){
  var singleValues = $(that).html();
  $("#tag_handler").append(singleValues);
}

$(".fly li").click(function(){
    add_tag(this);
});

1 个答案:

答案 0 :(得分:0)

我做了一个小小的演示,可能符合你的两个要求 JS:

$(function(){
    var tags = [];
    function add_tag(that){
      var tag = $(that).text();
      if($.inArray(tag, tags)>=0) return;
      tags.push(tag);
      var singleValues = $(that).html();
      $("#tag_handler").append(singleValues);
    }

    $(".fly li").click(function(){
        add_tag(this);

    });

    $('#tag_handler').on('click', 'span', function(){
        var tag = $(this).text();
        var index = $.inArray(tag, tags);
    tags.splice(index,1);
        $(this).remove();
    });
});

HTML:

<ul class="fly">
    <li><span>Tag 1</span></li>
    <li><span>Tag 2</span></li>
    <li><span>Tag 3</span></li>
    <li><span>Tag 4</span></li>
</ul>
Tags:
<div id="tag_handler"></div>
  1. 点击“.fly li”将标签添加到“tag_handler”;如果已标记,则不执行任何操作。
  2. 点击“tag_handler”中的标签进行删除,然后再添加;