JSP EL当参数存在时添加前导空格

问题描述 投票:1回答:1

当我添加$ {parameter}并且存在时,是否有更优雅的方法来添加前导空格?

示例:我想创建一条消息给用户,根据对象的状态,它可能有或没有序列号。但我想以任何方式显示此文本:

Should this carrier be removed from it's parent container (${container.name} ${container.serialNumber})?

当序列号存在时,看起来不错,当序列号不存在时,名称和右括号之间有一个空格。

目前,我会避免在它之前添加${not empty container.serialNumber?' ':''}之类的东西。

这会增加代码的混乱度,并不一定使其更具可读性。另一种选择是在后端站点上添加空间,但这会混合前端和后端逻辑。

还有其他建议吗?

提前感谢。

jsp el
1个回答
1
投票

可能有一点改进,就是像这样写表达式:

${empty container.serialNumber?'':' '}

..但这确实需要自定义EL函数。要创建一个,请参见EL tag info

如果您不想编写自定义的EL函数,则始终可以向container模型添加函数以获取格式化的字符串。

© www.soinside.com 2019 - 2024. All rights reserved.