【问题标题】:For loop equivalent in FaceletsFacelets 中的 for 循环等效项
【发布时间】:2012-05-23 06:34:46
【问题描述】:

如何在 Facelets 中执行类似以下操作?

for(int i=0; i<=80; i++){
<f:selectItem  itemLabel=i itemValue=i />
}

我在上面的代码中结合了 Java 和 Facelets 代码,但我希望这样的东西可以在 Facelets 中工作。我需要在加载页面时增加itemLabelitemValue。我需要显示从 1 到 80 的所有值作为下拉选项。

是否可以这样做,或者有其他方法可以实现吗?

【问题讨论】:

标签: jsf facelets


【解决方案1】:

你为什么不使用

<f:selectItems value="#{myBean.someList}" var="someVal"
     itemLabel="#{someVal.someLabel}" itemValue="#{someVal.someVal}" />

someList 是一个对象列表...

另外,你应该看看OmniFaces Showcase - Arrays ,有几个你可能会发现相关的例子

否则,您可以按照@AurA 的建议使用c:forEach&lt;f:selectItem 进行操作

【讨论】:

  • 谢谢丹尼尔,因为你建议我在我的 bean 级别创建了一个列表,并在 xhtml 页面中调用了该对象,它似乎工作正常......:)再次感谢您....
【解决方案2】:

我想这可能就是您要找的东西?

<select>
for(int i=0; i<=80; i++){
   <option value = i>i</option>
}
</select>

不是你想要达到的 100% - 我假设这是 php 中的 for 循环(或者你可以使用 JS)并且你只是试图创建一个简单的 (x/html) 选择表单在一个循环内? html/xhtml 没有循环功能,仅用于纯标记。如果我对您有误解,请澄清您的问题,我会尽力为您提供更好的帮助。

【讨论】:

    猜你喜欢
    • 2013-03-12
    • 1970-01-01
    • 2019-06-03
    • 2011-08-21
    • 2016-08-03
    • 1970-01-01
    • 2015-04-17
    • 2022-01-12
    • 2014-01-12
    相关资源
    最近更新 更多