XSLT를 사용하여 각 하위 노드에서 하위 문자열을 선택하고 표시하는 데 문제가 있습니다. 다음 코드를 사용했습니다. 이것은 4 개의 자식 노드가있는 것처럼 첫 번째 자식 노드를 4 번 반환합니다. 누구든지 도와 줄 수 있습니까?umbraco는 모든 자식 노드 값이 아닌 첫 번째 자식 노드를 계속 반환합니다.
XSLT 코드
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets"
exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets ">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:template match="/">
<xsl:param name="testString">
<xsl:for-each select="$currentPage/WhatWeDoItems [@isDoc]">
<xsl:value-of select="whatWeDoItemDescription"/>
</xsl:for-each>
</xsl:param>
<xsl:for-each select="$currentPage/WhatWeDoItems [@isDoc]">
<p><xsl:value-of select="umbraco.library:TruncateString($testString,170,'...')"/></p>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
좋은 질문, +1을. 간단하고 쉬운 해결책에 대한 내 대답을보십시오 :) –
내 대답은 현재 받아 들여지는 것보다 간단하고 짧습니다. –