SP 页面通常嵌入 JS 代码,且 JS、JSP之间需要相互使用一些变量的值,但JSP代码在服务器运行、JS代码在客户端浏览器运行,所以涉及到JS和JSP值传递问题。其交互方式如下:
JS使用JSP中的变量:
<%
String test = "I am testing !"// JSP片段中定义变量
%>
<SCRIPT LANGUAGE = "JavaScript" >
var tmp = "<%=test %>"// 通过 "<%=javaCode %>" 引用jsp中的变量、方法等,注意:一定要加双引号
alert(tmp)
</SCRIPT >
扩展资料
Js文件函数中调用另一个Js文件函数的方法:
在项目中Js文件需要完成某一功能,但这一功能的大部分代码在另外一个Js文件已经完成,只需要调用这个文件实现功能。
html 文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>html文件</title>
</head>
<body>
<script src="a.js"></script>
<script src="b.js"></script>
</body>
</html>
JDK1.6版添加了新的ScriptEngine类,允许用户直接执行js代码。参考一下代码吧:
public static void main(String[] args) {
ScriptEngineManager manager = new ScriptEngineManager()
ScriptEngine engine = manager.getEngineByName("javascript")
try {
engine.eval("var a=3var b=4print (a+b)")
// 不能调用浏览器中定义的js函数
// engine.eval("alert(\"js alert\")") // 错误,会抛出alert引用不存在的异常
} catch (ScriptException e) {
e.printStackTrace()
}
}
猪哥解答:1、如果是想通过JSP中的java代码调用js某函数,假定函数名为DemoFunction,那么就在jsp中这样写<%out.println("<script>DemoFunction()</script>")%>
2、如果不是想通过java代码调用,那么HTML页面怎么调用的就是怎么调用。