[英]Can I define a javascript variable to a grails object?
我可以将javascript变量分配给这样的grails对象吗?
var newReport = ${report};
report
是一个grails域对象,它从控制器传递回gsp文件。
目前这在我的页面中不起作用。
假设该报告是Grails域类,您必须将其“翻译”为有效的javascript格式。 一种方法是将其设置为JSON。 就像是:
在控制器中
def reportJson = report as JSON
在gsp中
<script type='text/javascript'>
var newReport = $.parseJSON("${reportJson}");
</script>
parseJSON接受json字符串并返回一个javascript对象。
只需将域对象作为JSON呈现给gsp,其中一些javascript代码通过eval()函数获取json。 例如:
域类 - 乐队:
String bandName //some property
...
控制器:
def bands = Band.list()
render(template:"result", model:[bands:bands as JSON]
_result.gsp:
<script>
var bandList = eval(${bands});
for(i=0; i<bandList.length; i++){
var name = bandList[i].bandName;
....
}
....
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.