在 SharePoint 中,我创建了一个内容查询 Web 部件,用于查询列表并以 3 列网格格式显示标题和 ImageURL 字段。
出于某种非常奇怪的原因,代码大部分时间都有效,图像和标题按照我的意愿显示在网格中。但是,如果刷新页面几次,则根本找不到图像并将其插入到标记中。标题确实始终显示。
我已经在XSL itemStyles.xsl中创建了自己的Item Style变量。这是我的代码:
<xsl:template name="customStyle" match="Row[@Style='customStyle']" mode="itemstyle">
<xsl:variable name="SafeLinkUrl">
<xsl:call-template name="OuterTemplate.GetSafeLink">
<xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="SafeImageUrl">
<xsl:call-template name="OuterTemplate.GetSafeStaticUrl">
<xsl:with-param name="UrlColumnName" select="'ImageURL'"/>
</xsl:call-template>
</xsl:variable>
<div class="item">
<xsl:if test="string-length($SafeImageUrl) != 0">
<a href="{$SafeLinkUrl}">
<img class="image customstyle-img" src="{$SafeImageUrl}" title="{@ImageUrlAltText}" />
</a>
</xsl:if>
</div>
</xsl:template>
如果有人能提出任何建议,我将不胜感激。
奥利弗
由于某种原因,开箱即用的代码正在复制图像URL。以下代码修复了它:
<img class="item_customImage" >
<xsl:attribute name="src">
<xsl:value-of select="substring-before(@ImageURL, ',')" />
</xsl:attribute>
</img>