【发布时间】:2011-07-23 00:35:57
【问题描述】:
我有一个这样的 selectOneMenu
<h:form>
<h:selectOneMenu value="#{CreateAds.selectedOwnerId}">
<f:selectItem itemLabel="Select a Owner" itemValue=""/>
<f:selectItems value="#{CreateAds.availableOwner}" />
</h:selectOneMenu>
</h:form>
这是我的CreateAds ViewScoped 豆
@ViewScoped
public class CreateAds extends View {
private List<SelectItem> availableOwner = null;
private String selectedOwnerId = null;
public CreateAds() {
}
@PostConstruct
public void init(){
availableOwner = new ArrayList<SelectItem>();
List<User> users = scholarEJB.findSponsorAndAdmin();
for(User u : users){
availableOwner.add(new SelectItem(u.getId().toString(), u.getFname() + " " + u.getLname()));
}
}
//getters and setters
}
列表显示正确,但值 selectedOwnerId 属性从未设置。它的值为null。这是我的代码生成的html
<select size="1" name="j_idt50:j_idt51">
<option value="">Select a Owner</option>
<option value="19102">Harry Pham</option>
<option value="27101">Thomas Chang</option>
<option value="27562">Hao Shen Lin</option>
</select>
【问题讨论】:
-
我在任何地方都看不到提交按钮/脚本和/或操作方法。这不是过于简单化了吗?
-
@BalusC:我也意识到了这一点。我在
commandButton的不同形式上有 selectOneMenu。真蠢。如果您可以将您的评论变成一个简单的快速答案,那么我可以接受。谢谢:D。
标签: jsf selectonemenu