我正在使用这个名为 TagHandler 的插件。链接:http://ioncache.github.io/Tag-Handler/ 我可以知道如何从数据库分配标签而不是硬编码到 jquery 吗?例如,分配标签是
$("#array_tag_handler").tagHandler({
assignedTags: [ 'C', 'Perl', 'PHP' ],
availableTags: [ 'C', 'C++', 'C#', 'Java', 'Perl', 'PHP', 'Python' ],
autocomplete: true
});
但我想从 mysql 数据库获取它。
他们只给出了使用 getData 内置函数的可用标签的示例
$("#ajaxget_tag_handler").tagHandler({
getData: { id: 'user123', type: 'user' },
getURL: '/ajaxtest/get',
autocomplete: true
});
我需要 php 示例。我不知道如何检索 JSON 格式的数据。
从网站...“通过为要通过 AJAX 检索的标签提供“getURL”。 使用此方法时,服务器必须提供一个名为“availableTags”的 JSON 格式数组,以及一个名为“signedTags”的附加数组(可选)。
最佳答案
在客户端,您希望像这样加载标签处理程序:
$(document).ready(function()
{
$("#array_tag_handler").tagHandler({
dataType: 'json',
getURL: '/admin/tag/list',
autocomplete: true
});
});
这会调用“/admin/tag/list”路由并期望返回 json。 在服务器端,您想要检索标签列表并以 json 格式将它们传回。
$result = getTags(); // Returns eg array('tag1', 'tag2', 'tag3', etc)
然后根据标签处理程序文档使用正确的索引构建数组:
$data = array('availableTags' => $result);
请注意,如果您想预加载一些标签(例如 tag1 和 tag2),则只需修改上面的数组,使其如下所示:
$data = array('availableTags' => $result, 'assignedTags' => array('tag1', 'tag2'));
然后需要对这个数组进行 json 编码,然后再将其返回给客户端:
return json_encode($data);
关于javascript - 如何通过 ioncache 从数据库为标签处理程序分配标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24006723/