如何在Grails控制器中呈现Html/JavaScript?

如何在Grails控制器中呈现Html/JavaScript?,grails,groovy,Grails,Groovy,我有如下控制器代码: def test23() { //params.id23 is been passed via ajax calls def find = User.findByUsernameLike("${params.id23}") println find render """<script type="text/javascript"> alert("hi"); </script>"""

我有如下控制器代码:

def test23() {
        //params.id23 is been passed via ajax calls
        def find = User.findByUsernameLike("${params.id23}")
        println find
        render """<script type="text/javascript"> alert("hi"); </script>""" 
    }
deftest23(){
//params.id23是通过ajax调用传递的
def find=User.findByUsernameLike(${params.id23})
打印查找
呈现“”警报(“hi”);“”
}
使用jquery的
ajax
方法调用此代码。嗯,它工作得很好,也就是说,我在控制台上打印输出,但是
渲染部分不工作(我没有收到
警报

我所做的是正确的吗?或者需要传递任何其他内容来呈现这些脚本?

请尝试以下操作:

render text: """<script type="text/javascript"> alert("hi"); </script>""",
        contentType: 'js'
渲染文本:“警报”(“hi”);”, contentType:'js'
或者可能:

render text: """<script type="text/javascript"> alert("hi"); </script>""", 
        contentType: 'text/javascript'
渲染文本:“警报”(“hi”);”, contentType:'text/javascript'
试试这个:

render text: """<script type="text/javascript"> alert("hi"); </script>""",
        contentType: 'js'
渲染文本:“警报”(“hi”);”, contentType:'js'
或者可能:

render text: """<script type="text/javascript"> alert("hi"); </script>""", 
        contentType: 'text/javascript'
渲染文本:“警报”(“hi”);”, contentType:'text/javascript'
颤抖。。。查看控制器中的代码;-)--作为一个更有用的注释,您应该考虑不在控制器中执行此操作,并将其移动到视图中。因此AJAX请求一个值,接收一个包含“hi”的Json对象,然后调用
alert
或其他东西。或者看看javascript中的模板框架。。。这真的取决于你想要实现什么…@tim_yates:我只是想知道这是否有效,但我不会把它放在我的代码中。但是,即使render应该向我显示一个警报,但事实并非如此,这就是为什么在这里被问到:)@tim_yates:谢谢你的建议。在用户从下拉列表框中选择一个值:)之后,我只需要将一些数据附加到DOM(即一些
id
元素,以便用户可以看到),在这种情况下,我需要,并处理将其附加到DOM客户机的问题-side@tim_yates:谢谢你的建议,先生。。。我肯定会试试的…发抖。。。查看控制器中的代码;-)--作为一个更有用的注释,您应该考虑不在控制器中执行此操作,并将其移动到视图中。因此AJAX请求一个值,接收一个包含“hi”的Json对象,然后调用
alert
或其他东西。或者看看javascript中的模板框架。。。这真的取决于你想要实现什么…@tim_yates:我只是想知道这是否有效,但我不会把它放在我的代码中。但是,即使render应该向我显示一个警报,但事实并非如此,这就是为什么在这里被问到:)@tim_yates:谢谢你的建议。在用户从下拉列表框中选择一个值:)之后,我只需要将一些数据附加到DOM(即一些
id
元素,以便用户可以看到),在这种情况下,我需要,并处理将其附加到DOM客户机的问题-side@tim_yates:谢谢你的建议,先生。。。我肯定会尝试的…我和蒂姆在这方面是一致的,返回脚本标签不是很MVCish。你肯定应该从模板中返回JSON或html片段。我同意Tim的观点,返回脚本标记不是很MVCish。您肯定应该从模板返回JSON或html片段。