呈现JavaScript函数返回里面的链接
我在一个.jade文件中使用这个代码,在一个for循环中用一个对象的值迭代和呈现html:
- var linkExist = function(i){ - if (result[i]){ - var html = ',follow on ' + i + ': <a href="' + result[i] + '" target="_blank">' + result[i].split("http://")[1] + '</a>'; - return html; - }; - } #{linkExist('Twitter')} #{linkExist('GitHub')}
它增加了额外的注释,并在之后渲染一个额外的<
na da >
,就像
< ,follow on Twitter: <a href="http://twitter.com/user" target="_blank">twitter.com/user</a> > <!--,follow on Twitter: <a href="http://twitter.com/user" target="_blank"--> twitter.com/user > < ,follow on GitHub: <a href="http://github.com/user" target="_blank">github.com/user</a> > <!--,follow on GitHub: <a href="http://github.com/user" target="_blank"--> github.com/user >
顺便说一句,如果我使用
=linkExist('Twitter') or | #{linkExist('Twitter')}
它将html呈现为文本,但却是正确的内容。 (但作为文本,而不是HTML)
得到它了,
玉自动转义html。 为了避免可以使用!=
。
所以我改为:
- var linkExist = function(i){ - if (result[i]){ - var html = ' ,follow on ' + i + ': <a href="' + result[i] + '" target="_blank">' + result[i].split("http://")[1] + '</a>'; - return html; - }; - } != linkExist('Twitter') != linkExist('GitHub')