我目前正在處理的 XML 結構:
<A>
<B>
<C>
<D attribute1="testAttr1" attribute2="testAttr2"/>
<D attribute1="testAttr1_2" attribute2="testAttr2_2"/>
<D attribute1="testAttr1_3" attribute2="testAttr2_3"/>
</C>
</B>
</A>
如果任何D 子節點屬性2 包含字串“Attr” ,我必須撰寫XSL:if應該傳遞的條件,如下所示:
<xsl:if test="contains(A/B/C/*D/@attribute2,'Attr')">
</xsl:if>
以上條件不成立。如果我洗掉 * 并嘗試xsl:if test="contains(A/B/C/D/@attribute2,'Attr')"只有當第一個 D 子屬性 2包含給定的字串時它才會起作用。即使任何 D 子屬性2 包含字串(例如 2nd D 或 3rd),如何使其作業。
uj5u.com熱心網友回復:
使用例如<xsl:if test="//D[contains(@attribute2, 'Attr')]">或<xsl:if test="//D/@attribute2[contains(., 'Attr')]">。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/536419.html
