如何使用免费标记获取列表中的第一项?

时间:2016-02-17 22:21:00

标签: html freemarker

我有以下代码,其中包含大约12个项目,但我只需要检索第一个项目。如何显示列表中的第一项?

我的代码是:

<#list analysttest.rss.channel.item as item>
          <div>
                  <h3 class="bstitle">${item.title}</h3>
                  <span class="bsauthor">${item.author}</span> 
                  <span>${item.pubDate}</span>
                  <p>${item.description}</p>

          </div>
      </#list>

2 个答案:

答案 0 :(得分:8)

analysttest.rss.channel.item[0]给出了第一项,为方便起见,您可以#assign为更短的名称。请注意,必须至少存在1个项目,否则会出错。 (或者,您可以执行<#assign item = analysttest.rss.channel.item[0]!someDefault>之类的操作,其中someDefault就像''[]{}等,具体取决于您的需求。 39;甚至更短<#assign item = analysttest.rss.channel.item[0]!>形式,它使用多类型&#34;通用无值&#34;值作为默认值...参见手册。)

列表也是可能的,但只有一个项目是奇数:<#list analysttest.rss.channel.item[0..*1] as item>,其中*1表示最多长度为1(需要FreeMarker 2.3.21或更高版本)。即使您有0个项目,这也可以(并且不输出任何内容)。

答案 1 :(得分:2)

<#assign item = analysttest.rss.channel.item[0]>

<div>
  <h3 class="bstitle">${item.title}</h3>
  <span class="bsauthor">${item.author}</span> 
  <span>${item.pubDate}</span>
  <p>${item.description}</p>
</div>