我在jsp页面上有一个java变量和一个javascript。
<% int max=70; %>
如何从脚本中获取变量?
var x = ???
我尝试了document.getElementById()但遗憾的是它似乎不起作用,因为它不是一个html元素
这是我的错误:
无法为JSP编译类:
An error occurred at line: 13 in the jsp file: /search.jsp
max cannot be resolved
10: function validateForm() {
11: var x=document.forms["search"]["capacity"].value;
12: var y=document.forms["search"]["date"].value;
13: var m=<%=max%>;
14: if (isNaN(x)) {
15: alert("Capacity must be an Integer");
16: return false;
答案 0 :(得分:6)
JSP是一个HTML代码生成器。 JS是HTML的一部分。
让JSP相应地打印JS变量。
var x = <%=max%>;
在浏览器中打开页面,右键单击查看源以验证JSP生成的HTML / JS语法是否正确。
无关具体问题,使用 scriptlet 被认为是十年以来不鼓励的。要了解正确的方法,请仔细阅读How to avoid Java code in JSP files?假设EL范围内有max
,您可以按如下方式打印:
var x = ${max};