向视图传递参数-从Grails到Javascript

向视图传递参数-从Grails到Javascript,javascript,grails,Javascript,Grails,我正在从控制器向视图传递一个参数 当我从主体打印参数时,它会正确打印。但是,如果我尝试从Javascript函数打印参数,它将不起作用 我怎样才能纠正这个问题 控制器 def showpeople(Long id){ def pInstance = People.get(id) render (view: "showpeople",model: [pInstance: pInstance]) } 看法 $(文档).ready(函数(){ var st

我正在从控制器向视图传递一个参数

当我从主体打印参数时,它会正确打印。但是,如果我尝试从Javascript函数打印参数,它将不起作用

我怎样才能纠正这个问题

控制器

def showpeople(Long id){
        def pInstance = People.get(id)
        render (view: "showpeople",model: [pInstance: pInstance])

    }
看法


$(文档).ready(函数(){

var str=${pInstance.stringval};//警报未显示的原因是您正在将该值作为常量而不是javascript中的有效字符串输出。您确实需要将其用引号括起来,并且还应该对字符串值进行编码,以便与javascript一起使用

例如:

var str = '${pInstance.stringval?.encodeAsJavaScript()}';
alert(str);

var str='${pInstance.stringval}';
如果它是一个字符串,你需要用某种形式的引号将其括起来,否则javascript会阻塞它。
var str = '${pInstance.stringval?.encodeAsJavaScript()}';
alert(str);