java向js传递参数,js怎么传递参数

发布时间:2022-11-17

本文目录一览:

  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

方式有很多种。可以用struts2框架,给页面返回值,然后用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