2011-04-24 85 views
1

我與XsltListViewWebPart的工作,我想補充我的自定義XSL和它的作品good.This XSL包含這樣的Javascript代碼給解析錯誤

<a> 
     <xsl:attribute name="title"><xsl:value-of select="@Title"/></xsl:attribute> 
     <xsl:attribute name="onclick"><xsl:value-of select="@ID"/></xsl:attribute> 
     <xsl:value-of select="@Title"/> 
</a> 

一個錨標記。當我想完成我的javascript代碼它給我解析錯誤。這是我的代碼

<a> 
     <xsl:attribute name="title"><xsl:value-of select="@Title"/></xsl:attribute> 
     <xsl:attribute name="onclick">OpenPopUpPage("/lists/news/dispform.aspx?isdlg=1&ID=<xsl:value-of select="@ID"/>");</xsl:attribute> 
     <xsl:value-of select="@Title"/> 
</a> 

任何人都可以幫我嗎?

回答

2

隨着XML(和XSLT是XML),你需要逃避任何符號「&」爲'&amp;'所以儘量

<a> 
     <xsl:attribute name="title"><xsl:value-of select="@Title"/></xsl:attribute> 
     <xsl:attribute name="onclick">OpenPopUpPage("/lists/news/dispform.aspx?isdlg=1&amp;ID=<xsl:value-of select="@ID"/>");</xsl:attribute> 
     <xsl:value-of select="@Title"/> 
</a> 

或者更好的使用屬性值模板例如

<a title="{@Title}"> 
    onclick="OpenPopUpPage('/lists/news/dispform.aspx?isdlg=1&amp;ID={@ID}');"> 
    <xsl:value-of select="@Title"/> 
</a> 

因爲它使代碼更短,更容易閱讀。

+0

+1好答案。 – 2011-04-25 15:52:20