当我添加 ${parameter} 并且它存在时,是否有更优雅的方式来添加前导空格?
示例: 我想向用户创建一条消息,根据对象的状态,它可能有或没有序列号。但无论如何我想显示这段文字:
Should this carrier be removed from it's parent container (${container.name} ${container.serialNumber})?
当序列号存在时看起来没问题,当序列号不存在时,名称和右括号之间有一个空格。
目前我会避免在之前添加类似 ${notemptemptcontainer.serialNumber?' ':''}
的内容。
这会给代码带来更多困惑,并且不一定会使其更具可读性。另一种选择是在后端站点上添加空间,但这会混合前端和后端逻辑。
还有其他建议吗?
提前致谢。
最佳答案
一个小小的改进可能是编写如下表达式:
${empty container.serialNumber?'':' '}
..但这确实需要自定义 EL 函数。要创建一个,请参阅 EL tag info .
如果您不想编写自定义 EL 函数,您可以随时向您的容器
模型添加一个方法来获取格式化字符串。
关于jsp - 当EL变量不为空时添加前导空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61497528/