gpt4 book ai didi

javascript - 如何在 XQuery 函数中转义 Javascript

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:45:03 25 4
gpt4 key购买 nike

有没有办法在 xquery 函数中转义或呈现 Javascript?

示例:

xquery version "1.0-ml";
module namespace tagmanager = "tagmanager";
declare function tagmanager() { < noscript > < iframe src = "//www.googletagmanager.com/ns.html?id=[value]"
height = "0"
width = "0"
style = "display:none;visibility:hidden" > < /iframe></noscript >
< script > (function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'//www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'value'); < /script>
};

最佳答案

CDATA 内容不需要转义。该示例很迟钝,因为您在 XML 语言中生成 HTML,我建议将整个内容视为一个字符串。显式 CDATA 构造函数只允许与一个元素一起使用,因此您需要一个包装器。 http://www.w3.org/TR/xquery/#doc-xquery-CDataSectionContents

例子:

xquery version "1.0-ml";
declare namespace html = "http://www.w3.org/1999/xhtml";
declare function local:tagmanager() as xs:string
{
<wrapper>
<![CDATA[
< noscript > < iframe src = "//www.googletagmanager.com/ns.html?id=[value]"
height = "0"
width = "0"
style = "display:none;visibility:hidden" > < /iframe></noscript >
< script > (function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'//www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'value'); < /script>


]]>
</wrapper>/string()
};

local:tagmanager()

关于javascript - 如何在 XQuery 函数中转义 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30088586/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com