永发信息网

java怎样调用js

答案:3  悬赏:0  手机版
解决时间 2021-01-25 21:29
  • 提问者网友:遮云壑
  • 2021-01-25 12:39
我想用java调用一个名为1.js脚本中的一个函数函数调用为EncodePwd(uin,psw)返回一个String变量。我应该如何调用这个js?
最佳答案
  • 五星知识达人网友:狂恋
  • 2021-01-25 13:46
// java调用js脚本的例子 
   ScriptEngineManager scriptEngineMgr = new ScriptEngineManager();
   ScriptEngine jsEngine = scriptEngineMgr.getEngineByName("JavaScript");
   StringBuffer sb = new StringBuffer();
   // 组装js代码,也可以从文件读入脚本到sb变量 
   jsEngine.put("myContext", myContext);// 放置其他参数
   jsEngine.eval(sb.toString());// 解析、执行脚本
全部回答
  • 1楼网友:底特律间谍
  • 2021-01-25 16:09
如果你是在jsp页面里,在js代码里可以用<% ...java代码....%> 不过不建议混编,最好js和java代码分开,js可以通过ajax调用访问java提供的接口,利于后期维护。 题主的问题回答: 方法1.提供一个servlet ,在servlet中调用getallemployees() 方法,把响应的值写入response,修改响应头为application/json,在页面使用ajax访问servlet,最后处理响应值 方法2..提供一个servlet ,在servlet中调用getallemployees() 方法,把响应的值存入request作用域,在jsp页面中使用el表达式获取值
  • 2楼网友:深街酒徒
  • 2021-01-25 14:39
首先java和js是完全两码事 两个的运行是不相干的 java是后台程序 运行在服务器上 而js则是生存在客户端浏览器(如ie) 只能是js间接调用java 过程是:js在客户端浏览器上运行,然后js让浏览器发送请求到服务器,然后服务器上的中间件(如tomcat)来把浏览器的请求(httpRequest)转交给java程序来处理。 典型的例子就是用js执行submit()提交表单到服务器和js生成ajax对象然后通过ajax对象把信息发送给服务器。 即js借助浏览器来达到间接调用后台java程序的功能。 反过来就不行了 由于http协议是无状态的,不像java与数据库那样有保持着的连接,数据库是知道当前有谁再连接着自己的,而java程序所在的服务器是无法直接沟通客户端浏览器的,他压根就不知道客户端在哪,也因此无法去和运行在客户端的js联系。 你如果想调用这个EncodePwd(uin,psw), 只能是在客户端浏览器上触发这个方法(例如提交按钮)然后把信息发送到服务器端。 其实还有一种技术,即“服务器推送”,这个大概可以实现你的想法,这是个新兴技术,用于由服务器直接把数据发送给客户端,而不需要客户端不停的用ajax来访问服务器。但是我想这个应该不是你想要的东西。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯