【发布时间】:2015-05-06 13:23:04
【问题描述】:
我想在 javascript 中使用下面的标签来读取资源包的值。
var myText = "<g:message code='${steps[i].text}' />" ;
steps[i].text 不是静态的,并且会不断变化,这就是为什么我需要将“steps[i].text”的值传递给资源包的原因。
如果我使用,
var myText = "<g:message code='a.b.key' />" ;
然后它工作正常。 但是对于下面的行,它会给出如下错误:
var myText = "<g:message code='${steps[i].text}' />" ;
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <g:render>: Error executing tag <r:script>: Error evaluating expression [steps[i].text] on line [393]: Cannot get property 'null' on null object
我的代码位于能够读取资源包的 .gsp 文件中。
【问题讨论】:
-
您的模型中的
steps[i].text是在服务器端还是在客户端?消息标签是服务器端的,不能与代码参数的客户端值一起使用。 -
是的 steps[i].text 来自服务器端,但在客户端我得到了正确的。因为如果我不进行本地化,那么我可以在我的页面上正确地看到该值。
标签: java javascript grails internationalization gsp