【问题标题】:Playframework: Call the controller's action by location.href through JavascriptPlayframework:通过Javascript通过location.href调用控制器的动作
【发布时间】:2018-03-17 12:27:28
【问题描述】:

有没有办法通过Javascript调用@controllers.app.test()

使用过程中一直正常

location.href = '@controllers.app.test()'

不知何故,这个location.href 变成了一个实际的 URL:

127.0.0.1:9001/admin/@controllers.app.test()

谁能帮我解决这个问题?

【问题讨论】:

标签: javascript scala url playframework


【解决方案1】:

@controllers.app.test() 在服务器端计算。您的 HTML 在视图中并由服务器处理,这就是它变为 /admin/@controllers.app.test() 的原因。您的 Javascript 只是在一个公共文件夹中,所以它不会处理。

接下来你可以做什么:

  1. 将 JS 文件放入视图(放置“正常工作”的 HTML 的相同位置)。
  2. <script> var myAction="@controllers.app.test()"</script>一样将JS对象添加到HTML中,然后在JS中使用myAction
  3. 使用 Java Script 路由器:

    3.1。 https://www.playframework.com/documentation/2.6.x/ScalaJavascriptRouting

    3.2。 Convert a javascript variable to scala in play framework

    3.3。 How to update src of a img from javascript in a play framework project?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2011-08-10
    相关资源
    最近更新 更多