为什么?
因为在开头的elseif
标记和逗号之间存在空格(换行符)。
我该如何摆脱空间?
将逗号直接放在开始标记之后,而不是放在下一行。您可以通过移动,在标签内换行,而不是后,实现这一点:使用
<g:elseif test="${index > 0 && merch <= transaction.Transactions.size() - 2}"
>, ${trans.name}</g:elseif>
或评论
<g:elseif test="${index > 0 && merch <= transaction.Transactions.size() - 2}"><%--
--%>, ${trans.name}<%--
--%></g:elseif>
你会发现你需要使用类似伎俩壁球之间的空间</g:if>
和<g:elseif>
标签,并紧接在<g:if>
之前。如果这一切开始显得有点笨拙,你可能更愿意使用Groovy代码,而不是GSP标签的条件句
stuff before<%
if(something) {
%>some content<%
} else if(index > 0 && merch <= transaction.Transactions.size() - 2) {
%>, ${trans.name}<%
} else {
%>something else<%
}
%>
没有注意到它,到现在为止,但有更好的办法,而不污染的代码? –