【发布时间】:2013-07-04 11:00:04
【问题描述】:
问题
我正在尝试逃避&,以便我可以使用js来重定向用户
代码
//first try
location.replace('//<xsl:call-template name="domainLocator"></xsl:call-template><xsl:value-of select="$dotNetAppFolder" />/Display?page=splash_device&xpf=android');
//second try
<xsl:text disable-output-escaping="yes" >/Display?page=splash_device&xpf=android</xsl:text>
期望的结果
web/Display?page=splash_device&xpf=android
所以,这个问题对我来说似乎很简单,我只是想转义 & 这样我的页面就不会抛出错误。
注意:另外,我知道这个问题以前被问过,但没有被接受的问题,它已经 4 岁了。认为有人必须知道答案,否则不可能。
【问题讨论】:
-
你能告诉我们你的预期输出是什么吗?令人困惑的是,您说要转义
&却使用disable-output-escaping,顾名思义,禁用转义。 -
已更新以显示所需的输出。你可以猜到我不知道我在用 XSLT 做什么,从另一个线程转义显示输出意味着这将允许转义。
-
从你想要的结果看来你想要做的是不逃避
&s,在这种情况下我建议尝试disable-output-escaping="yes",但它会是最好将大部分 JS 放在一个单独的 JS 文件中,然后通过函数将所需的值传递给它。 -
是的,遗憾的是它不是一个选项,将 JS 放在一个单独的文件中。那么我想,为什么
disable-output-escaping="yes"不为我工作?如果这是正确的行为! -
并非所有 XSLT 处理器都支持
disable-output-escaping。你用的是什么处理器?
标签: xml xslt escaping invalid-characters