为SharePoint 2007增强自定义查询Webpart创建自定义样式时出现问题

时间:2011-11-16 16:03:06

标签: sharepoint xslt sharepoint-2007

我在SharePoint 2007中的增强型CQWP上添加了一些额外的列,并尝试从我的自定义ItemStyle.xsl中应用样式。我想把我的列放到一个表中,但是每次我在XSL中创建样式时,我都会遇到Web部分的问题:

“无法显示此Web部件。要解决此问题,请在与Windows SharePoint Services兼容的HTML编辑器(如Microsoft Office SharePoint Designer)中打开此网页。如果问题仍然存在,请与Web服务器管理员联系。” p>

当我删除我的风格时,它会回到显示结果。我有我已经创建的其他样式,它们工作得非常好,但是当我尝试创建表格时,我遇到了问题。这是我的新样式代码:

<xsl:template name="jonstyle" match="Row[@Style='jonstyle']" mode="itemstyle">
<xsl:param name="CurPos" />
<xsl:param name="LastRow" />
<xsl:variable name="tableStart">
<xsl:if text="$CurPos = 1">
<![CDATA[ 
        <table> 
            <tr> 
            <td align="left"> 
            <b>Title</b> 
            </td> 
            <td align="left"> 
            <b>Company</b> 
            </td> 
            <td align="left"> 
            <b>Title</b> 
            </td> 
            </tr>]]>
            </xsl:if>
            </xsl:variable>
            <xsl:variable name="tableEnd">
                  <xsl:if test="$CurPos = $LastRow"> 
                  <![CDATA[</table>]]> 
                  </xsl:if> 
            </xsl:variable>
            <xsl:value-of select="$tableStart" disable-output-escaping="yes" />
            <tr>
                <td>
                    <div id="Project">
                    <xsl:value-of select="@Project" />
                    </div>
                </td>               
                <td>
                    <div id="Description">
                    <xsl:value-of select="@Description" />
                    </div>
                </td>               
                <td>
                    <div id="Jons">
                    <xsl:value-of select="@jons" />
                    </div>
                </td>               
            </tr>
            <xsl:value-of select="$tableEnd" disable-output-escaping="yes" />
        </xsl:template>

注意:我已经确定我从Main.xsl文件传递了所需的var(即我的CurPos和LastPos:

<xsl:template name="OuterTemplate.CallItemTemplate">
<xsl:param name="CurPosition" />
<xsl:param name="LastRow" />
    <xsl:choose>
        <xsl:when test="@Style='TableViewProjects'">
            <xsl:apply-templates select="." mode="itemstyle">
            <xsl:with-param name="CurPos" select="$CurPosition" />
            <xsl:with-param name="LastRow" select="$LastRow" />
            </xsl:apply-templates>

我还在CommonFieldViews中添加了我的额外列,它们在其他视图样式中正常工作。

我尝试了几种不同的制作表的方法,但都给了我同样的问题。有人可以帮我这个吗?

干杯!

0 个答案:

没有答案
相关问题