本文目录一览:
- 1、java函数返回值 赋给js参数
- 2、数据怎样在java 和javascript之间传输? 比如java如何得到javascript的变量对象值
- 3、怎样将java中的数据传给js
- 4、把java的值传给js
- 5、怎么将后台java的一个参数传递给 前台js
- 6、如何在java中调用js方法
java函数返回值 赋给js参数
js 文件里 就只能用 ajax 了
当页加载完成之后 发送 ajax 请求到后台,然后接受后台返回来的值,在页面写个js 方法调用 js文件里的js把值 传进去
数据怎样在java 和javascript之间传输? 比如java如何得到javascript的变量对象值
理论上java获得所有请求都是通过servlet,但是现在很多框架进行了封装,建议使用框架,可以轻松的实现,比如DWR就可以用js在页面调用java代码,还能传递参数,获得返回值,原理就是它对ajax异步请求做了相应的封装。
js获得java的代码可以直接通过%=%这种方式获取。
DWR原理介绍:
dwr框架是服务器端的ajax框架,那么最基础的还是XMLHttpRequest,我们在服务器端的dwr.xml文件中配置好后,dwr框架会把根据配置内容生成相应的js文件,在这个js文件里,它提供了访问服务器端的请求。可以想象,这js文件中有使用XMLHttpRequest请求服务器。其可以使用这样一种方式来处理:使用XMLHttpRequest去访问一个jsp文件,在这个jsp文件中,会使用%java语句%来访问在dwr.xml文件定义要访问的方法。并且将返回结果格式化为xml形式发送回给客户端。在客户端,我们使用XMLHttpRequest的reponseXML去接收这个xml(当然是在XMLHttpRequest的onreadystatechange事件指定的方法中接受),然后使用XML DOM对象来解析这个xml文件,生成一个对象或数组。然后,把生成的对象或数组传给要处理的回调函数,使用HTML DOM显示页面动态效果。
怎样将java中的数据传给js
方式有很多种。可以用sturts2框架。给页面返回值,然后用el表达式取。也可以用session传。也可以用out传拼接起来
把java的值传给js
在java文件中
int aa=1;
request.setAttribute("aa",aa);
jsp文件中
用一个隐藏域接受一下值
input type="hidden" name="aa" id="aa" value="${aa}"
js中
var aa=document.getElementbyid("aa").value;
if(aa==1){
document.getElementById('text1').style.display=none;
}
是不是这样,没怎么看懂题
怎么将后台java的一个参数传递给 前台js
可以通过前台js请求后台java代码,将参数以返回值的形式,返回给前台。这种方式用的最多的就是使用ajax了。通过在后台与服务器进行少量数据交换,ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
如何在java中调用js方法
在Java中调用js文件中的function,传入调用参数,并获取返回值
js文件中的merge函数将两个参数a,b相加,并返回c。
// expression.js
function merge(a, b) {
c = a * b;
return c;
}
在Java代码中读取js文件,并参数两个参数,然后回去返回值。
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();
}
}
输出结果:
c = 5.0