我正在用Grails制作一个Web应用程序.我有一个列表,其中包含必须包含在JavaScript中的数据,以便在< select>上执行一些动态加载下拉列表中.基本上,我从服务器获得一个两级列表,然后第一级显示在一个下拉框中.当用户选择一个选项时,与该选项关联的列表将显示在另一个下拉框中.
function selecTipe() { var types = ${typeList} alert('List of types ' + types )
问题是,如果将typeList定义为(在Groovy中)为
typeList = [['TYPE1',['VAR1','VAR2','VAR3']],['TYPE2','VAR3']] ['TYPE3','VAR3']] ]
function selecTipe() { var types = [[ TYPE1,[ VAR1,VAR2,VAR3 ]],[ TYPE2,VAR3 ]] [ TYPE3,VAR3 ]] ] alert('List of types ' + types )
这是错误的,因为JavaScript不是作为字符串处理,而是因为缺少引号而作为引用.
有没有办法强制Groovy打印带引号的数组列表或任何其他简单的方法来实现这一目标?
PD:我可以做一个特定的功能来实现它,但我认为这应该是一个简单的方法…
编辑:我添加了完整的数据结构,比简单列表更复杂
解决方法
在grails控制器的操作中尝试这个:
def types = ['TYPE1','TYPE2','TYPE3'] as grails.converters.JSON [typeList : types]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。