use*_*463 5 javascript playframework playframework-2.0
我遇到的问题包括我的html中的本地javascript文件在play框架上.路径是正确的,我甚至尝试将javascript文件包含在同一目录中.但是,从Web(我正在使用的主库)的导入工作正常.
@(execId: String)
<html>
<head>
<title>Timeline</title>
<script type="text/javascript" src="http://mbostock.github.com/d3/d3.js"></script>
<script type="text/javascript"
src="http://code.jquery.com/jquery-latest.js"></script>
<script type = "text/javascript" src = "../../public/javascripts/profilesJS/stack.js"> </script>
</head>
<body>
<input id="profiles" type="button" value="Profiles" />
<script type="text/javascript">
alert(tester());
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
javascript文件只是看起来像这样
function tester(){
return "test";
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
tester is not defined
Run Code Online (Sandbox Code Playgroud)
在警报线
bie*_*ior 16
根据资产文档(以及一般的路由),您需要在模板中使用反向路由:
<script type="text/javascript" src='@routes.Assets.at("javascripts/profilesJS/stack.js")'></script>
Run Code Online (Sandbox Code Playgroud)
它构建了正确src的/public/javascripts/profilesJS/stack.js文件路径(默认路由配置/assets/javascripts/profilesJS/stack.js)