Question

Je l'édition du ItemStyle.xsl pour produire mon propre style pour une partie de contenu Web de requête (CQWP) comme suit: (NB - 2 lignes laternative de code sont présentés comme (A) et (B)

<xsl:template name="MyNewStyle" match="Row[@Style='MyNewStyle']" mode="itemstyle">
<div class="SipAddress">
  <xsl:value-of select="@SipAddress" />
</div>
<div class="LinkToolTip">
  <xsl:value-of select="@LinkToolTip" />
</div>
<div class="OpenInNewWindow">
  <xsl:value-of select="@OpenInNewWindow" />
</div>
<div class="OnClickForWebRendering">
  <xsl:value-of select="@OnClickForWebRendering" />
</div>
   <div>
   <table width="100%" >
   <tr>
      <td width="45%" ><xsl:value-of select="@Title" /></td>
       <td width="33%"><xsl:value-of select="@Location" /></td>
       (A) <td width="32%"><xsl:value-of select="@EventDate"/></td>
       (B) <td width="32%"><xsl:value-of select="msxsl:format-date(@EventDate, 'dd/mm/yyyy h:mm')"/></td>

   </tr>
  </table>         
  </div>

Utilisation de la ligne (A) fonctionne en ce que toutes les données sont tous tiré à travers (je l'ai également édité le CommonViewField dans le webpart)

Toutefois, la date apparaît dans ce format: 2011-04-21 10:00:00

Alors, après un peu de googler je suis tombé sur ceci: et remplacé (A) (B)

Le champ de date a disparu ... (soupir)

Que dois-je faire pour que la date apparaît dans le format correct?

Était-ce utile?

La solution

Après avoir cherché les âges pour la réponse à cela, je suis tombé sur elle minutes après avoir affiché cette question ...

Quoi qu'il en soit, la réponse est ici: http://blogs.msdn.com/b/joshuag/archive/2009/03/25/custom-date-formats-in-sharepoint-xsl.aspx

Résumé:

  1. Référence de l'espace de noms DDWRT en haut de la itemstyle.xls xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"

  2. Maintenant, vous pouvez utiliser la fonction FormatDate où vous voulez:

    <xsl:template name="Default" match="*" mode="itemstyle">
    <xsl:value-of select="ddwrt:FormatDate(@ArticleStartDate, 2057, 3)"/>
    </xsl:template>

Autres conseils

J'ai trouvé ce que la meilleure façon de limiter le champ de date.

 < xsl:variable name="cDate" select="@cDate"></xsl:variable>

 < xsl:value-of disable-output-escaping="yes" select="substring-before($cDate,' ')"></xsl:value-of>
Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top