Использование xpath / xslt для получения привязочной части URL-адреса страницы
Вопрос
Я пишу шаблон на xslt с xpath 1.0, и мне нужно получить доступ к тегу привязки с URL текущей страницы.Например, URL-адрес:
http://localhost/destinations/london.aspx#accommodation
Мне нужно иметь возможность получить #accommodation и присвоить его переменной.Я понимаю, что я несколько ограничен использованием xpath 1.0 - есть ли у кого-нибудь опыт в этом?
Спасибо, Адам
Решение
Почему это вообще проблема с xpath?URL-адрес не является XML-документом, следовательно, xpath не применяется.
XSLT совершенно не знает о каком-либо состоянии, таком как местоположение страницы.Немного догадываясь о том, что вы пытаетесь сделать, вам, вероятно, лучше всего получить #accomodation от string manipulation или framework в слое, который вызывает XSLT, передавая значение в качестве параметра.
ОТО, возможно, это бессмысленно, и ваш вопрос просто нуждается в уточнении.
Другие советы
Как сказал @Annakata, это не проблема XPath.Похоже, это тоже не проблема с XSLT, хотя я могу ошибаться.Если это связано с синтаксическим анализом строк XSLT, то вам нужно что-то вроде этот вопрос рассказывает о том, о чем.
Что ты вероятно вместо этого нужен Javascript для получения текущего URL-адреса (document.location
) а затем выполните для него синтаксический анализ строки Javascript.
В стандартном XSLT нет способа получить доступ к URL документа : http://www.dpawson.co.uk/xsl/sect2/nono.html#d1974e804
Некоторые поставщики могут предоставлять эту информацию через пользовательские свойства, но тогда вы будете зависеть от процессора XSLT.
Если вам каким-то образом удалось вставить URL-адрес в XSLT, то я полагаю, вам придется прибегнуть к простым манипуляциям со строками, чтобы получить привязку.