我在通过我的XSL页面输出document.write()javascript时遇到了很大的麻烦。 (它是第三方外部跟踪代码段的一部分)
我想要的输出是:
document.write('<sc'+'ript src="'+'http'+(document.location.protocol=='https:'?'s':'')+'://'+ia_link+'"></sc'+'ript>');
这是我的完整代码:
<script language="JavaScript" type="text/javascript">
var url="someurl.js";
var blablabla="some-dynamic-values";
var ia_link=url+'?parameter='+blablabla;
</script>
<script>
<xsl:text disable-output-escaping="yes"><![CDATA[document.write('<script type="text/javascript" src="//:'+ia_link+'"></script>')]]></xsl:text>
</script>
<noscript>
<img src="http://url.php?blablabla=some-dynamic-values" width="1" height="1" />
</noscript>
我已经尝试了几个远离document.write()元素的东西......使用上面的<xsl:text disable-output-escaping="yes">
无效解决方案,html输出已损坏(两个</script>
标签)
- &GT;如何正确输出带脚本标签的document.write?
答案 0 :(得分:2)
您定位的是哪些浏览器?众所周知,Firefox或SeaMonkey等Mozilla浏览器不支持客户端XSLT转换的HTML结果中的document.write
:https://developer.mozilla.org/en/docs/XSL_Transformations_in_Mozilla_FAQ#What_about_document.write.3F