我正在使用 xpath 1.0 在 xslt 中编写模板,并且需要从当前页面的 url 访问锚标记。例如,网址:
http://localhost/destinations/london.aspx#accommodation
我需要能够获得#accommodation 并将其分配给一个变量。我意识到我在使用 xpath 1.0 时受到了一些限制 - 有没有人有这样做的经验?
谢谢,亚当
我正在使用 xpath 1.0 在 xslt 中编写模板,并且需要从当前页面的 url 访问锚标记。例如,网址:
http://localhost/destinations/london.aspx#accommodation
我需要能够获得#accommodation 并将其分配给一个变量。我意识到我在使用 xpath 1.0 时受到了一些限制 - 有没有人有这样做的经验?
谢谢,亚当
为什么这根本是一个 xpath 问题?URL 不是 XML 文档,因此 xpath 不适用。
XSLT 完全不知道页面位置等任何状态。猜测一下您正在尝试做什么,您可能最好从调用 XSLT 的层中的字符串操作或框架中获取#accomodation,并将值作为参数传递。
OTOH 也许这很荒谬,您的问题只需要澄清一下。
正如@Annakata 所说,这不是 XPath 问题。这似乎也不是 XSLT 问题,尽管我可能弄错了。如果它与 XSLT 字符串解析有关,那么您需要的是类似于这个问题所讨论的内容。
您可能需要的是 Javascript 来获取当前 URL ( document.location
),然后对其执行 Javascript 字符串解析。
标准 XSLT 无法访问文档的 URL:http ://www.dpawson.co.uk/xsl/sect2/nono.html#d1974e804
一些供应商可能会通过自定义属性提供此信息,但是您将依赖于 XSLT 处理器。
如果您已经设法以某种方式将 URL 导入 XSLT,那么我建议您必须借助简单的字符串操作来获取锚点。