我正在使用一个非常棒的插件,名为 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);
});
除了需要的一点功能之外,我的代码中的所有内容都完全按照需要运行。 :( 所以我的问题是:我需要调整或修改哪些内容才能帮助我使用输入按钮添加标签?非常感谢您。(拥抱)
最佳答案
您可以简单地使用 tagit add
方法。
代码:
//MY CLICK FUNCTION THAT ISN'T WORKING PROPERLY
$(".addIt").click(function () {
$('#demo1').tagit('add', this.id);
return false;
});
关于javascript - jQuery 塔 git : Add tags using input buttons,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22538083/