여기 내 XML의 일부는 다음과 같습니다 XSL의는 XSL에서 노드의 두 세트를 비교하는 데 도움이 필요
<div id="menu">
<div>menu1
<div class="subMenu">
<div>submenu1
</div>
<div>submenu2
</div>
</div>
</div>
<div>menu2
<div class="subMenu">
</div>
</div>
<div>menu3
<div class="subMenu">
<div>submenu3
</div>
</div>
</div>
<div>menu4
<div class="subMenu">
</div>
</div>
</div>
및 조각 :
<xsl:template match="//Authentication/GetUserMenu">
<div>
<xsl:for-each select="//MenuList/row">
<div><xsl:value-of select="@MenuID"/></div>
tu
<xsl:for-each select="//FunctionList/row[">
<div><xsl:value-of select="@MenuID"/></div>
</xsl:for-each>
tu
</xsl:for-each>
</div>
</xsl:template>
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="ran.xsl"?>
<Authentication isLogged="1" uid="40">
<GetUserMenu>
<MenuList>
<row MenuID="1" MenuTitle="menu1"/>
<row MenuID="2" MenuTitle="menu2"/>
<row MenuID="3" MenuTitle="menu3"/>
<row MenuID="4" MenuTitle="menu4"/>
</MenuList>
<FunctionList>
<row FunctionID="1" FunctionTitle="submenu1" MenuID="1" WorkflowName="ImportDataWithoutFile" Order="1"/>
<row FunctionID="2" FunctionTitle="submenu2" MenuID="1" WorkflowName="ImportDataFromFile" Order="2"/>
<row FunctionID="2" FunctionTitle="submenu2" MenuID="3" WorkflowName="ImportDataFromFile" Order="2"/>
</FunctionList>
</GetUserMenu>
</Authentication>
이
HTML 출력이 같은해야한다
내 xsl이 다음과 같이하고 싶습니다.
- for each each cycle에서 xsl은
<row>
의 MenuId 속성 값을<MenuList>
으로 읽습니다. - 는 피 각 내부 사이클 내 XSL 내 XSL은
<MenuList>
의<row>
추종 menuId와 속성의 값을 판독하고, 이것에 의해 두 번째 단계 반복 후<FunctionList>
- 의
<row>
년대의 MenuAttribute의 각 값에 그 값을 비교 이 html 메뉴 단추 및 해당 단추 아래에 하위 메뉴 단추를 만들 수있게됩니다.이foreach (xitems as xitem) foreach (yitems as yitem) if xitem == yitem do smth
사람이 어떤 조언을 제공하거나 수정할 수 없습니다 : 메뉴와 하위 메뉴 버튼 사이의 연결은 다음과 같을 것입니다 무슨 난 (XSL로) 할 것을 시도하고 일반 프로그래밍 언어에서 menuId와 속성
인식 내 문제를 해결하기 위해 내 코드? 나는
XML 입력을 HTML 출력으로 변환하는 XSLT 방법에 대한 도움말을 보려면 작지만 대표적인 XML 입력 샘플과 작성하려는 해당 HTML 출력을 표시하는 것이 좋습니다. 그러면 올바른 XSLT 코드를 도울 수 있습니다. "일반적인"프로그래밍 언어의 코드를 XSLT 코드로 "번역"하는 것은 XSLT로 인한 문제를 해결하는 좋은 방법이 아닙니다. –
나는 예상 된 html 출력을 게시했다.더 이상 세부 사항이 없다면 말해주세요. 도움이된다면 고맙겠습니다. –