Spring 有没有办法在自定义JSP标记中有条件地包含属性?

Spring 有没有办法在自定义JSP标记中有条件地包含属性?,spring,jsp,custom-tags,conditional-attribute,Spring,Jsp,Custom Tags,Conditional Attribute,假设我有一个可以接受3个属性的字段 <myTag a="something" b="something" c="something" /> 假设我只想在a变量不为空时包含那些a、b、c属性。有了EL,它就变成了这样 <myTag a="${varA}" b="${varB}" c="${varC}" /> 如果一个或多个变量为空(假设varB为空),我将得到如下输出: <myTag a="a val" b c="c val" /> 所以b仍然

假设我有一个可以接受3个属性的字段

<myTag a="something" b="something" c="something" />

假设我只想在a变量不为空时包含那些a、b、c属性。有了EL,它就变成了这样

<myTag a="${varA}" b="${varB}" c="${varC}" />

如果一个或多个变量为空(假设varB为空),我将得到如下输出:

<myTag a="a val" b c="c val" />

所以b仍然存在,但是传递一个空白值。 如果属性为空(例如表单上的itemLabel:options),这可能会导致某些spring
标记出现问题 如果我不想要呢?有没有一种简单的方法使属性不完全显示

我知道我能做到

<c:if test="${empty b}">
    <myTag a="${varA}" c="${varC}" />
</c:if>

但这意味着,如果每个属性都可能为空,那么随着属性数量的增加,我们需要一个巨大的决策树


有人知道更好的方法吗?

这不是JSTL标记。这是一个自定义JSP标记。要了解JSTL到底是什么,请转到我修正了您问题中的术语。这不是JSTL标记。这是一个自定义JSP标记。要了解JSTL到底是什么,请转到我修复了您问题中的术语。