是否可以在<s:select>标记的listValue中放入if条件?</s:select>

时间:2013-04-26 17:28:48

标签: java jsp struts2

我的jsp页面上有以下s:select标记:

 <s:select name="collaborator" listValue="%{title.designation+' '+name}" value="cololaborator" id="collaborator" listKey="id"  list="listaPsmPse" ></s:select>

我想知道是否可以做这样的事情:

listValue="if(title!=null)%{title.designation+' '+name}else%{name}"

2 个答案:

答案 0 :(得分:3)

您可以使用ternary if来编写它,如下所示:

listValue="title !=null ? title.designation + ' ' + name : name"

答案 1 :(得分:0)

标签显示您正在使用struts。我推荐使用bean。在struts Action处理程序中,计算要为listValue显示的值。在bean属性中设置该值,并使用bean属性的值作为listValue。因此,实际计算应该在Java代码(struts)中完成,而不是在JSP本身中完成。那是我想的最佳方式。

有关我所说的内容的示例,请参阅Buhake Sindi为以下StackOverflow问题撰写的已接受答案:

how to use <bean:write > tag in strut 1.2?