我知道Javascript和Jquery的基础知识。但是,我需要在Javascript变量中输出一些html。这是代码:
$( function() {
var availableTags = [
"{% for entry in craft.entries.find() %}","<a href='{{ entry.url }}'>{{ entry.title }}</a>","{% endfor %}"
];
$( "#search-results-general" ).autocomplete({
source: availableTags
});
}
);
这个Javascript中的代码是Twig和一些html。因为我使用的CMS是Craft CMS。
提前致谢!
答案 0 :(得分:0)
Twig通常在服务器上运行(第一次),JavaScript通常在客户端上运行(稍后,一旦页面转为html)。除非您使用非常奇怪的设置,否则将不会运行由JavaScript添加的Twig标记。
如果您使用服务器端jQuery或客户端树枝库做一些奇怪的事情,您应该对更广泛的问题采取不同的方法,或编辑问题并更详细地解释您的设置。
在twig文件的上下文中,您可以执行以下操作:
<script>
$(function() {
var availableTags = [
{% for entry in craft.entries.find() %}
"<a href='{{ entry.url }}'>{{ entry.title }}</a>",
{% endfor %}
];
$("#search-results-general").autocomplete({
source: availableTags
});
}
);
</script>
这样做的目的是让树枝生成javascript代码行。请注意,您可能需要修复上面的XSS漏洞。