在xsl转换中的属性名称中使用冒号

时间:2013-05-22 11:08:01

标签: xslt addthis

<xsl:template name="AddThis">
        <div class="AddThis">
            <!-- AddThis Button BEGIN -->
            <div class="addthis_toolbox addthis_default_style" addthis:url="{be:GetFullBlogUrl(@Date, @Title)}" addthis:title="{@Title}" xmlns:addthis="http://www.addthis.com">
        <a class="addthis_button_facebook_like" fb:like:width="115"> </a>
                <a class="addthis_button_tweet"></a>
                <a class="addthis_counter addthis_pill_style addthis_nonzero"></a>
            </div>
            <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=xa-4f86b27a69737a92"></script>
            <!-- AddThis Button END -->
        </div>
    </xsl:template>

我需要添加fb:like:width =“115”根据 http://support.addthis.com/customer/portal/articles/125587-facebook-like-button-width#.UZyl2rVM_2P

但是由于命名空间问题,xsl转换当然无法解决这个问题。 知道怎么解决吗?任何只写出纯文字的选项。

1 个答案:

答案 0 :(得分:0)

AFAIK无法生成包含2个冒号的属性(可以使用普通xmlns alias prefix处理单个冒号fb:。)

相反,您可以使用xsl:text使用disable-output-escaping="yes"呈现文字,如下所示:

<xsl:text disable-output-escaping="yes">
  &lt;a class="addthis_button_facebook_like" fb:like:width="115"&gt; &lt;/a&gt;
</xsl:text>

输出:

<a class="addthis_button_facebook_like" fb:like:width="115">