0

浏览器请求一些数据,为此我需要发回将在浏览器上执行的 Javascript。

如何从 Play Framework 控制器将 Javascript (.js) 发送回浏览器?

谢谢

4

1 回答 1

1

如果您只想在控制器中发回 JavaScript,您可以执行类似的操作

public static void sayHello() {
    renderText("alert('hello')");
}

然后在你用来调用动作的 JS 函数中(使用 jsAction 标签),你只需使用 javascript eval 函数。

所以,你的代码可能看起来像

<script type="text/javascript">
   var sayHello = #{jsAction @sayHello() /}
   eval(sayHello());
</script>

请注意 eval 被认为是危险的,就好像有人设法拦截了请求,并将他们自己的 javascript 注入到您的代码中,它会在客户端机器上执行此代码。

于 2012-09-15T09:02:59.220 回答