Java是不可以插入js的,但是可以输出js,一般有以下两种方法:
1.通过request跳转的方式,在中间d出js代码。
2.可以通过out.print()打印的方式把整个页面打印出来,这中间虽然是Java中输出,但是也是输出的页面。
大体这么多,也可能有我不知道的方法,如果觉的可以,给分,谢谢。
function是属于javascript里面的语法,而<%%>里面调用的是java的语法,所以想要用<%%>调用alert()是不行了,因为他们不是同一个东西。不知道你的意思是不是页面一加载就进行调用alert(),如果是这样的话,建议使用onload事件,表示页面加载的时候调用alert()
或者如果是点击的时候调用,那么久调用onclick()..总而言之可以使用事件完成。
package com.sinaapp.manjushri
import java.io.FileReader
import javax.script.Invocable
import javax.script.ScriptEngine
import javax.script.ScriptEngineManager
/**
* Java调用并执行js文件,传递参数,并活动返回值
*
* @author manjushri
*/
public class ScriptEngineTest {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager()
ScriptEngine engine = manager.getEngineByName("javascript")
String jsFileName = "expression.js"
// 读取js文件
FileReader reader = new FileReader(jsFileName)
// 执行指定脚本
engine.eval(reader)
if(engine instanceof Invocable) {
Invocable invoke = (Invocable)engine
// 调用merge方法,并传入两个参数
// c = merge(2, 3)
Double c = (Double)invoke.invokeFunction("merge", 2, 3)
System.out.println("c = " + c)
}
reader.close()
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)