Question

J'ai une définition de liste personnalisée qui définit une vue.Ces vues sont liées à un fichier xsl personnalisé en raison de certaines règles de formatage (ligne rouge lorsque le champ X est égal à Y).

Dans ce fichier XML, j'aimerais ajouter un lien vers une page personnalisée avec l'ID de l'élément.Le résultat devrait être : weburl/pages/mypage.aspx?id=123.

J'ai maintenant quelque chose comme ceci, à la toute fin de mon fichier XSL :

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

Cela fonctionne à partir de la page d'accueil de mon site (qui est /pages/home.aspx), mais cela ne fonctionnera pas à partir de la liste elle-même en raison de l'URL relative.

  1. l'approche XSL est-elle la bonne façon de définir un tel lien ?
  2. si oui, existe-t-il un jeton ou un moyen similaire pour créer une URL relative SPWeb ?

merci

Était-ce utile?

La solution

Si vous incluez correctement main.xsl dans votre modèle, utilisez $ ServerRelativeRL paramètre global.

Exemple:

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

référence MSDN pour les paramètres globaux XSLT disponibles ici:

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top