Xslt Umbraco等高线,1.1.12-选择下拉列表的值

Xslt Umbraco等高线,1.1.12-选择下拉列表的值,xslt,umbraco,umbraco-contour,Xslt,Umbraco,Umbraco Contour,基本上,我的XSLT没有达到标准,字段是Contour中的下拉列表,我是这样理解的: <xsl:value-of select="$records//fields/child::* [name() = 'countryoforigin']"/> 但是,这带来了我不想要的值: 3c7607b3-714c-47ec-8863-3919c6bdcfc9dc2c66c2-fa57-4e98-b26a-89B7ED041300原产国 我只想要这个值,这里是英国 其他字段是输入字段,返回值如下

基本上,我的XSLT没有达到标准,字段是Contour中的下拉列表,我是这样理解的:

<xsl:value-of select="$records//fields/child::* [name() = 'countryoforigin']"/>
但是,这带来了我不想要的值:

3c7607b3-714c-47ec-8863-3919c6bdcfc9dc2c66c2-fa57-4e98-b26a-89B7ED041300原产国

我只想要这个值,这里是英国

其他字段是输入字段,返回值如下:

<xsl:value-of select="$records//fields/child::* [name() = 'position']/.//value"/>
但当同样的方法应用于下拉列表名称='countryoforigin'时,它就不起作用了

有什么想法吗

J

更多片段

XML:

代码段:

<xsl:param name="currentPage"/>
<xsl:param name="records" />
<table>
    <tr>
        <td width="26%">
            <font face="arial" color="#333333" size="2"><strong><xsl:value-of select="umbraco.library:GetDictionaryItem('position')"/>:</strong></font>
        </td>
        <td width="74%"><font face="arial"><xsl:value-of select="$records//fields/child::* [name() = 'position']/.//value"/></font>
        </td>
    </tr>       
</table>
<p>
      <font face="arial" color="#333333" size="2">
          <strong>
              Country of origin
              <br/>

              <xsl:value-of select="$records//fields/child::* [name() = 'countryoforigin']"/>

          </strong>
      </font>
  </p>

好的,就像另一个值一样,应该这样做:

<xsl:value-of select="$records//fields/*[name() = 'countryoforigin']//value"/>

您能再给我们看一点XSLT吗?例如,的xsl:value之前的部分。如果您有一个对应于$records的XML示例,这也会很有帮助。这就是未修改的输入XML吗?您在问题顶部指出的输出似乎在结尾包含一些源XML中没有的Id文本。唉,恐怕没有加上其他属性,例如位置使用此约定:-我看不出下拉列表有什么不同?您可以尝试上面修改的代码吗?下拉列表的原始XPath与其他值的XPath不同。后者在结尾处有///值,而前者没有。我试着清理路上的杂物,但听起来好像没用。您是否删除了一些名称空间声明xmlns=…,从而清理了发布的源XML?我刚刚再试了一次,结果成功了,可能是某种缓存!谢谢你的帮助!
<xsl:value-of select="$records//fields/*[name() = 'countryoforigin']//value"/>