【发布时间】:2016-12-08 22:00:47
【问题描述】:
如何将 JSP 变量传递给外部文件中的 javascript 函数?
我有以下设置
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="js/jquery/jquery-2.1.1.js"></script>
<script type="text/javascript" src="js/jquery/ui/jquery-ui.js"></script>
<script type="text/javascript" src="js/date/moment.js"></script>
<script type="text/javascript" src="js/app.js"></script>
<script type="text/javascript" charset="utf-8" src="js/d3.js"></script>
<script type="text/javascript" src="js/myScript.js" ></script>
<link href="js/jquery/ui/jquery-ui.css" rel="stylesheet" />
<link href="js/jquery/ui/jquery-ui.theme.css" rel="stylesheet" />
<link href="css/myCSS.css" rel="stylesheet" />
<title>My Title</title>
</head>
<body>
<div id="myDIV">
<c:set var="myVar" value="${myInVar}" />
<script>runMyScript();</script>
</div>
</body>
</html>
现在在我的 javascript 中,我尝试访问 jsp 变量,但我在网上找到的两种方法都不起作用:
var javaScriptVar = '${myVar}';
var javaScriptVar2 = "<%=myVar%>";
我得到的是字符串,而不是 jsp 变量的实际值。
我读到了这个答案:Passing variable from JSP to Javascript,它建议在我包含 javascript 文件之前声明变量,但我不知道该怎么做。
如果我将它们放在标头中,它们不会被解析,因为它们来自后端请求。 如果我没有在标头中包含脚本并在调用之前将 src 属性添加到脚本部分,则该方法永远不会执行。
这里完全糊涂了。
【问题讨论】:
-
“我得到了字符串”是什么意思?你得到的实际输出是什么。
-
我的意思是字符串没有被评估,它只是一个字符串。该值最终为“”
标签: javascript jsp