本文目錄一覽:
- 1、把java的值傳給js
- 2、如何將強類型的語言如java快速轉成js或者typescript代碼
- 3、在Android上怎樣實現JAVA和JS交互
- 4、怎麼用js調用java的介面?
- 5、怎麼把這段java代碼改為js代碼
把java的值傳給js
js和java變數互傳
在jsp中經常會遇到把js變數賦給java變數,或者將java變數賦給js變數的情況,在此將通用的處理方法小結如下:
1、java變數傳給js寫法如下:
var a=”%=javaParam%”;
注意這裡要將引號””加上;
2、js變數給java稍微複雜點,一般是在表單中用一個
的隱藏表單元素,然後在腳本中將js變數值賦給它:
var jsParamValue=’aaaa’;
form1.jsParam.value=jsParamValue;
然後就可以request.getPrameter(“jsPrama”);
來取得js變數值了。
如何將強類型的語言如java快速轉成js或者typescript代碼
js是解釋型語言,java是編譯型語言
js之所以是若類型,就是因為定義變數的時候沒有確定他具體是什麼類型,都是統一用var關鍵字來定義;而java在定義變數的時候要明確制定他是什麼類型,是int或是string或是其他的,然後根據類型分配合適的存儲空間。
在Android上怎樣實現JAVA和JS交互
java和js交互分為三種情況,分別是:
1 調用網頁上的js代碼
Android 中可以通過webview來實現和js的交互,在程序中調用js代碼,只需要將webview控制項的支持js的屬性設置為true,,然後通過loadUrl就可以直接進行調用,如下所示:
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl(“javascript:test()”);
2 網頁java代碼的方法
在網頁中調用java代碼,需要在webview控制項中添加javascriptInterface。如下所示:
mWebView.addJavascriptInterface(newObject() {
publicvoid clickOnAndroid() {
mHandler.post(newRunnable() {
publicvoid run() {
Toast.makeText(Test.this,”測試調用java”, Toast.LENGTH_LONG).show();
}
});
}
},”demo”);
在網頁中,只需要像調用js方法一樣,進行調用就可以
div id=’b’a onclick=”window.demo.clickOnAndroid()”b.c/a/div
3 Java代碼調用js並傳參
首先需要帶參數的js函數,如functiontest(str),然後只需在調用js時傳入參數即可,如下所示:
mWebView.loadUrl(“javascript:test(‘aa’)”);
4.Js中調用java函數並傳參
首先一樣需要帶參數的函數形式,但需注意此處的參數需要final類型,即得到以後不可修改,如果需要修改其中的值,可以先設置中間變數,然後進行修改。如下所示:
mWebView.addJavascriptInterface(newObject() {
publicvoid clickOnAndroid(final int i) {
mHandler.post(newRunnable() {
publicvoid run() {
intj = i;
j++;
Toast.makeText(Test.this,”測試調用java” + String.valueOf(j), Toast.LENGTH_LONG).show();
}
});
}
},”demo”);
然後在html頁面中,利用如下代碼divid=’b’a onclick=”window.demo.clickOnAndroid(2)”b.c/a/div,
下面是安卓無憂中js 與安卓相互調用的效果圖,可以百度一下安卓無憂,點擊源碼,看看裡面的源碼。
怎麼用js調用java的介面?
參考這兩個 webSettings.setJavaScriptEnabled(true); 是啟用js,mWebView.addJavascriptInterface(new DemoJavaScriptInterface(), “demo”); 是定義個對象demo,js中調用demo對象就可以調用剛剛定義的java方法 了。這兩個是關鍵
怎麼把這段java代碼改為js代碼
就在function裡面寫就可以,js中只能指定動作,具體顯示還得讓jsp頁面來做。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/257037.html