2013-04-26 119 views
0

我试图显示一个选择菜单,这样默认选择的值就是城市的名称(如果变量“item”中有城市)。如果没有价值,我想显示“没有选择”。在h中选择默认值:selectOneMenu

我试图做这样的事情:

<h:selectOneMenu value="#{(item.city!=null)?itemTmp.city.name:''}"> 
    <s:selectItems .... /> 
</h:selectOneMenu> 

但分析异常被抛出。我如何在h:selectOneMenu中设置默认值(如果有),或者如果相反,则选择“不选择”?

+0

作为一个更好的选择,为什么不在'索引0'处使用'Select City'这样的东西,这样就不需要处理'null'。 – dShringi 2013-04-26 07:29:19

回答

1

如果要显示空值,则必须将具有空字符串或其他类似于“--Select City--”的选择项添加到列表中。

cityItemList.add(new SelectItem("")); 
// or cityItemList.add(new SelectItem("--Select City--")); 
    cityItemList.add(new SelectItem("Greenville")); 
    cityItemList.add(new SelectItem("Franklin")); 
    cityItemList.add(new SelectItem("Clinton")); 
    cityItemList.add(new SelectItem("Fairview"));