具有任何屬性值的XSL選擇節點我有以下xsl。使用參數
<xsl:param name="ip"/>
<xsl:for-each select="log/event[@ip=$ip]">
<!--content-->
</xsl:for-each>
我通過ip
參數。在某些情況下,我需要選擇每個log/event
而不取決於ip
。例如,我想通過ip="*"
,在這種情況下,我想選擇所有的log/event
節點。我怎樣才能做到這一點?由於
具有任何屬性值的XSL選擇節點我有以下xsl。使用參數
<xsl:param name="ip"/>
<xsl:for-each select="log/event[@ip=$ip]">
<!--content-->
</xsl:for-each>
我通過ip
參數。在某些情況下,我需要選擇每個log/event
而不取決於ip
。例如,我想通過ip="*"
,在這種情況下,我想選擇所有的log/event
節點。我怎樣才能做到這一點?由於
<xsl:for-each select="log/event[$ip = '*' or @ip = $ip]">...</xsl:for-each>
應該做的。只要確保星號*
不是ip
屬性可以具有的值之一。
如果你不關心的屬性然後使用:
<xsl:param name="ip"/>
<xsl:for-each select="log/event">
<!--content-->
</xsl:for-each>
如果你不關心IP屬性的值,但是你想只能選擇其中至少有一個ip
節點屬性使用:
<xsl:param name="ip"/>
<xsl:for-each select="log/event[@ip]">
<!--content-->
</xsl:for-each>
只是'log/event [@ip]'有什麼問題? – hek2mgl
是的,這是解決方案。 @ hek2mgl你的「解決方案」根本不依賴於參數值。 –
@ hr_117的'*'是否依賴於屬性值?順便說一句,OP寫道:'在某些情況下,我需要選擇每個日誌/事件不取決於IP' ...瘋狂的評論,對不起! – hek2mgl