Javascript jQuery标记它插件
可能重复:Javascript jQuery标记它插件,javascript,jquery,tags,tag-it,Javascript,Jquery,Tags,Tag It,可能重复: 如何从数据库中获取自动完成的标记 我想我可以自己处理php部分:) 这是自动完成功能的最小代码,我真的不知道如何将标记发布到php $(function(){ $('#tags').tagit({ availableTags: ['c++', 'java', 'php', 'coldfusion', 'javascript', 'asp', 'ruby', 'python', 'c', 'scala', 'groovy', 'haskell', 'perl'
如何从数据库中获取自动完成的标记 我想我可以自己处理php部分:) 这是自动完成功能的最小代码,我真的不知道如何将标记发布到php
$(function(){
$('#tags').tagit({
availableTags: ['c++', 'java', 'php', 'coldfusion', 'javascript', 'asp', 'ruby', 'python', 'c', 'scala', 'groovy', 'haskell', 'perl', 'erlang', 'apl', 'cobol', 'go', 'lua']
});
});
您可以在此处找到完整的代码:
是否要使用数据库中的可用标记填写availableTags变量? 你可以简单地做
<?php
echo "'$tag1', ";
echo "'$tag2', ";
...
?>
如果您正在执行自动完成,您可以让您的PHP脚本通过给定的条目用可用的标记进行响应,例如:
$.get('available.php', function(data) {
console.dir(data);
});
<?php
$response = Array();
foreach ($tags as $tag) {
if (strpos($tag, $entry) !== false) $response[] = $tag;
}
now echo $response array as json or xml or whatever you want
?>
使用:
第一个解决方案将从数据库中回显所有标记…数据库中有2000多个标记。第二个代码…这会像标准搜索一样工作吗?我已经更新了答案,BasdFasdi实际上没有得到答案,我只有以下代码:$(function(){$('#tags').tagit();}); 那么,当所有的事情都完成后,它应该是什么样子?这有帮助吗?非常感谢,你让我的一天变得美好,先生:)一点都不是一个好主意,因为数据库中可能有数千个标签,这个问题已经在这里解决了是的,这就是全部要点,你得到了所有的标签。还是需要限制标签的数量?当然,您可以使用array_unique来获取唯一的标记,检索结果要比从php文件中获取标记更快。正如我所提到的,数据库中有数千个唯一的标记……一次获取所有标记的速度非常慢,您只需要几个标记就可以自动完成。明白了吗?哦,你的意思是继续手动一个接一个地添加标签。那就行了。我不认为谷歌会这么做。
$.ajax({
type: "POST",
url: "available.php",
data: "entry="+ $('input[name=entry]').val(),
}).done(function( data) {
// invoke your TagIt plugin with data but first decode it
});
var availableTags = <?php echo json_encode($availableTags); ?>;
$availableTags = array();