【问题标题】:jQuery Tagit: Add tags using input buttonsjQuery Tagit:使用输入按钮添加标签
【发布时间】:2014-03-20 15:43:20
【问题描述】:

我在当前项目的开发中使用了一个非常棒的插件,名为 jQuery Tagit

在我尝试添加我自己的一点点 jQuery 之前,一切都(可疑地)顺利进行。我的目标是让最终用户可以选择使用按钮添加标签。我放了一些测试按钮,看看它是否有效。

问题?我开发的代码可以粘贴所需的术语,但是当我输入标签时,目标输入并没有看到它。它会在那里停留几秒钟,然后自动删除。以下是我目前使用的代码:

HTML:

<input value="PHP" id="PHP" type="button" class="addIt">
<input value="Perl" id="Perl" type="button" class="addIt">
<input value="Java" id="Java" type="button" class="addIt">
<input value="Asp" id="Asp" type="button" class="addIt">

<ul id="demo1" data-name="nameOfSelect"></ul>
<div class="buttons">
    <button id="demo1GetTags" value="Get Tags">Get Tags</button>
</div>
<div id="recordtags">
    <h2>Tag Records</h2>
</div>

jQuery:

$(function () {

var availableTags = [
    "ActionScript",
    "AppleScript",
    "Asp",
    "BASIC",
    "C",
    "C++",
    "Clojure",
    "COBOL",
    "ColdFusion",
    "Erlang",
    "Fortran",
    "Groovy",
    "Haskell",
    "Java",
    "JavaScript",
    "Lisp",
    "Perl",
    "PHP",
    "Python",
    "Ruby",
    "Scala",
    "Scheme"
];

$('#demo1').tagit({
    tagSource:availableTags,
    select:true,
    sortable:true,
    allowNewTags:false,
    triggerKeys:['enter', 'comma','tab']
});

$("#demo1GetTags").click(function () { showTags($("#demo1").tagit("tags")) });

function showTags(tags) {
    console.log(tags);
    var string = "";
    for (var i in tags)
        string += tags[i].value + ",";
    var result = string.slice(0,-1);
    $('#recordtags').append( result+"<br>" );
}

//MY CLICK FUNCTION THAT ISN'T WORKING PROPERLY
$(".addIt").click(function(){
    var selectorTarget = "#demo1";

    var specificInput = " .tagit-new input.tagit-input";
    var where2paste = selectorTarget+specificInput;
    $( where2paste ).focus();
    var value = this.id;
    var pastefield = where2paste;
    var input = $(pastefield);
    input.val(input.val() + value + ',');
    return false;
});

setInterval("$('#fork').effect('pulsate', { times:1 }, 500);", 5000);
});

我的代码中的所有内容都完全按照需要工作,只是需要一些功能。 :( 所以我的问题是:我需要调整或改进哪些东西来帮助我使用输入按钮添加标签?提前非常感谢你。(拥抱)

【问题讨论】:

    标签: javascript jquery-plugins tag-it


    【解决方案1】:

    您可以简单地使用 tagit add 方法。

    代码:

    //MY CLICK FUNCTION THAT ISN'T WORKING PROPERLY
    $(".addIt").click(function () {
        $('#demo1').tagit('add', this.id);
        return false;
    });
    

    演示:http://jsfiddle.net/q87Hb

    【讨论】:

    • 哦。我的。主。有用。 :) 我仍然是 JS / jQuery 的中级,所以一千个真诚的感谢你,Irvin 爵士。 (拥抱)
    • 错误:没有这样的方法 'add' 用于 tagit 小部件实例
    • @DamjanPavlica 你能提供一个演示吗?
    • 查看此处查看相同问题:stackoverflow.com/questions/25233444/…
    • @DamjanPavlica 链接的问题是关于另一个名为 TagIt 的插件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-27
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多