2012-06-22 56 views
3

我的XML就像這樣。如何遍歷Tridion DWT模板中的這些嵌入值

. 
. 
. 
</body> 

<List> 
    <topicTitle>This is topic title</topicTitle> 
    <topDef>This is topic definition.</topDef> 
</List> 

我基本上要插入topicTitletopDef<li>標籤。我試圖用這樣的代碼(爲簡單起見,顯示topicTitle代碼):

<!-- TemplateBeginRepeat name="List" --> 

    <!-- TemplateBeginRepeat name="Field.topicTitle" --> 

     <li>@@RenderComponentField(FieldPath+".value", 
            TemplateRepeatIndex)@@ </li> 
    <!-- TemplateEndRepeat --> 

<!-- TemplateEndRepeat --> 

但它似乎並沒有工作。有任何想法嗎?

+0

這是基於XML的一個外表套上網絡架構(所以用嵌入式架構名爲List)?或者這是你在富文本字段中的東西? –

+0

另外:你作爲輸出得到什麼? 「(FieldPath = @@ FieldPath @@,TemplateRepeatIndex = @@ TemplateRepeatIndex @@)」(如此處所示:http://stackoverflow.com/a/10322575/209103)? –

+1

<! - TemplateBeginRepeat name =「Field.topicTitle」 - >只會遍歷topicTitle字段的值 - 看起來完全不像您想要的那樣... –

回答

1

在嵌入式架構的情況下,你並不需要遍歷的XMLList(與TemplateBeginRepeat)不同組件的鏈接,在這裏你可以直接通過語法訪問嵌入式子元素: -

@@ Component.XMLNameOfEmbeddedschema.XmlElementNameinEmbeddedSchema @@

請注意以上內容XMLNameOfEmbeddedschema =您在插入可嵌入架構時在父架構中給出的XMLName。

因此,在您的方案將與

工作@@ Component.List.topicTitle @@訪問topicTitle的價值。

請註明這個答案所接受,如果這個解決方案適用於你...