鉴于路径/XML/Staff/Content/ContentXML/StaffProfile/Role
是正确的,并且我有5 /XML/Staff
只有一名工作人员以“合作伙伴”这个XPath有什么问题?
为什么这场比赛的所有5名工作人员的角色?
<xsl:apply-templates select="/XML/Staff[Content/ContentXML/StaffProfile/Role='Partner']" mode="List"/>
鉴于路径/XML/Staff/Content/ContentXML/StaffProfile/Role
是正确的,并且我有5 /XML/Staff
只有一名工作人员以“合作伙伴”这个XPath有什么问题?
为什么这场比赛的所有5名工作人员的角色?
<xsl:apply-templates select="/XML/Staff[Content/ContentXML/StaffProfile/Role='Partner']" mode="List"/>
我还没有看到你的XML(你应该张贴完整性),但我认为Role
是一个XML元素,如果是这样的情况下,相对于一个字符串将无法正常工作。试试这个:
<xsl:apply-templates
select="/XML/Staff[Content/ContentXML/StaffProfile/Role/text()='Partner']"
mode="List" />
如果Role
是一个属性,你需要这样做:
<xsl:apply-templates
select="/XML/Staff[Content/ContentXML/StaffProfile/@Role='Partner']"
mode="List" />
是角色的属性或元素? –
角色是一个元素 – johnwards
然后你需要执行'/ text()'来选择'Role'的文本节点,因为'Role'元素本身不等于字符串''Partner'';正如我在下面回答的那样。 –