21

使用 Grails 的 GSP<g:set>标签,是否可以指定变量的类型?我想声明一个整数变量,但<g:set>总是声明一个字符串。例如:

<g:set var="x" value="100"/>
${x.getClass()}
${x+23}

结果是

class java.lang.String
10023

我想声明x为整数。我注意到使用 JSP 标记<% int x=100; %>会导致:

class java.lang.Integer
123

有没有办法以 Grails/GSP 的方式做到这一点?

4

2 回答 2

31

定义value. 例如:

<g:set var="x" value="${100}"/>

您可以查看g:set 的标签文档以获取更多信息。

于 2009-12-13T01:28:17.433 回答
2

就像对遇到此问题的人的附加评论一样,因为它是 Internet 上唯一有用的结果和 cast/Int/Sring/etc。此示例适用于变量:

<g:set var="printLeft" value="${offer?.metaInfo?.redeemPrintY as Integer}"/>
<g:set var="printTop" value="${offer?.metaInfo?.redeemPrintX as Integer}"/>
<g:set var="printWidth" value="${offer?.metaInfo?.redeemPrintW as Integer}"/>
<g:set var="printHeight" value="${offer?.metaInfo?.redeemPrintH as Integer}"/>

...

<area shape="rect" coords="${printLeft},${printTop},${printLeft+printWidth},${printTop+printHeight}" onClick="printOffer();" />
于 2013-06-05T14:19:11.130 回答