正如我在这篇文章中所提到的: dynamic multiple filters in xsl 基本上,我希望将多个过滤器适用于使用“for循环”我的xml和这些过滤器是动态的,这是从一些其他的XML添加多个过滤器
某物来像这样:
foreach(list/field[@ProgramCategory=$Country][not(contain(@Program,$State1][not(contain(@Program,$State2][not(contain(@Program,$State3][not(contain(@Program,$Staten])
问题是我可以得到n没有。我正在通过其他XML的循环状态。
通过Dimitre的建议,所以我想通过实现它的我不能使用文件()函数:
<xsl:variable name="allprograms">
<xsl:for-each select="/list2/field2">
<xsl:text disable-output-escaping="yes">[not(contains(@Program,'</xsl:text><xsl:value-of select="@ProgramID"></xsl:value-of><xsl:text disable-output-escaping="yes">'))]</xsl:text>
</xsl:for-each>
</xsl:variable>
给了我这样的事情:
[not(contains(@Program,'Virginia'))][not(contains(@Program,'Texas'))][not(contains(@Program,'Florida'))]
我想上面使用值作为for循环下面的过滤器,我不知道如何实现这一点
<xsl:for-each="list/field[not(contains(@Program,'Virginia'))][not(contains(@Program,'Texas'))][not(contains(@Program,'Florida'))]">
在th是我也有一个for循环过滤美国
xsl:for-each="list/field $allprograms">
<xsl:value-of select="@ows_ID" />
</xsl:for-each>
我想我的答案是1082,1088 ..
我可以在这里添加XML太多,如果有任何混淆..
酷......它的工作......谢谢.... – Jack
@杰克:不客气。 –