Вопрос

У меня есть определение пользовательского списка, которое определяет некоторое представление.Эти представления связаны с пользовательским файлом XSL из-за некоторых правил форматирования (красная строка, когда поле X равен Y).

В этом XSL я хотел бы добавить ссылку на пользовательскую страницу с идентификатором элемента.Результатом должен быть: weburl/pages/mypage.aspx?id=123.

У меня сейчас что-то подобное, в самом конце моего файла XSL:

  <td>
    <a href="../Pages/mypage.aspx?MyID={@ID}">
      Show
    </a>
  </td>
.

Это работает с домашней страницы моего сайта (которая является /pages/home.aspx), но это не будет работать из самого списка из-за относительного URL.

  1. это XSL подходит правильный способ определить такую ссылку?
  2. Если да, есть ли какой-нибудь токен или похожий путь для создания относительного URL-адреса SPWEB?

    Спасибо

Это было полезно?

Решение

Если вы в том числе правильно Main.xsl в своем шаблоне, используйте $ SERVERRELAPTIONAPYURL GLOBAL PARAMETER.

Пример:

<td>
  <a href="{$ServerRelativeUrl}/Pages/mypage.aspx?MyID={@ID}">
    Show
  </a>
</td>
.

MSDN Ссылка для глобальных параметров XSLT доступна здесь:

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top