本文目錄一覽:
- 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
原創文章,作者:DZRY,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/147807.html