導航:首頁 > 編程語言 > jsp其他地方怎麼調用局部變數

jsp其他地方怎麼調用局部變數

發布時間:2023-03-03 02:36:13

1. jsp調用js的變數

SP 頁面通常嵌入 JS 代碼,且 JS、JSP之間需要相互使用一些變數的值,但JSP代碼在伺服器運行、JS代碼在客戶端瀏覽器運行,所以涉及到JS和JSP值傳遞問題。其交互方式如下:

JS使用JSP中的變數:

<%

String test ="I am testing !"; // JSP片段中定義變數

%>

<SCRIPT LANGUAGE ="javaScript">

var tmp ="<%=test %>"; // 通過"<%=javaCode %>"引用jsp中的變數、方法等,注意:一定要加雙引號

alert(tmp);

</SCRIPT >

(1)jsp其他地方怎麼調用局部變數擴展閱讀

Js文件函數中調用另一個Js文件函數的方法:

在項目中Js文件需要完成某一功能,但這一功能的大部分代碼在另外一個Js文件已經完成,只需要調用這個文件實現功能。

html 文件

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>html文件</title>

</head>

<body>

<script src="a.js"></script>

<script src="b.js"></script>

</body>

</html>

2. js怎麼引用JSP里定義的JAVA變數

可以將JAVA變數在JSP頭部定義成全局變數。
然後可以分別在JS和JSP里調用。
因為可以將JS和JSP理解為兩個相互獨立的塊。這2個塊裡面的變數都是局部變數。而局部變數是不共享的。
首先很基礎的:JS可以直接引用JAVA變數,但JAVA不能引用JS變數。因為頁面是先編譯JAVA再編譯JS,代碼如下:
String tbname="bd_bank";
out.write("<SCRIPT language="+"'"+"JavaScript"+"'"+">var tbname="+"'"+tbname+"'"+";</SCRIPT>");
%>

//下面的javascipt可以直接調用變數tbname
<script language="javascript">
alert(tbname);
</script>

//在js文件中的javascipt一樣可以直接使用變數 tbname 啊。
<script language="JavaScript" src="../comm/dbgrid.js"></script>

反正兩個原則記好:
1、jsp代碼中可以構造javascipt語句,當然包括定義備用的javascipt的變數
2、理論上在整個頁面中,任何一個地方定義的javascript代碼都可以被正確使用。javascipt代碼對位置不敏感。

3. jsp調用js的變數

1、首先在jsp頁面上,定義二個變數。

4. 在jsp中的局部和全局變數

jsp中的局部和抄全局變數定義方法襲:
全局變數的定義方法:<%! 變數類型 變數名%>
如,定義一個int型的全局變數a寫法如下:
<%! int a;%>
局部變數定義方法:<% 變數類型 變數名%>
如,定義一個String型的局部變數b寫法如下:
<% String sign = "1";%>

5. 急急!!jsp文件中有一個變數title,請問源文件(.java文件)怎樣調用這個變數。

你這個問題太簡單了,但是你提問沒有提清楚.如果你用的是servlet做的話就用request取,如果用到了struts2就要在Action裡面配置變數title,還要setter getter

6. 如何調用其他jsp頁面的參數

可以,你只要跳轉到da1.jsp就行了
參考如下:
1.簡單說 page指當前頁面。在一個jsp頁面里有效
2.request 指從http請求到伺服器處理結束,返回響應的整個過程。在這個過程中使用forward方式跳轉多個jsp。在這些頁面里你都可以使用這個變數。
3.Session 有效范圍當前會話,從瀏覽器打開到瀏覽器關閉這個過程。
4.application它的有效范圍是整個應用。
作用域里的變數,它們的存活時間是最長的,如果不進行手工刪除,它們就一直可以使用

page里的變數沒法從index.jsp傳遞到test.jsp。只要頁面跳轉了,它們就不見了。

request里的變數可以跨越forward前後的兩頁。但是只要刷新頁面,它們就重新計算了。

session和application里的變數一直在累加,開始還看不出區別,只要關閉瀏覽器,再次重啟瀏覽器訪問這頁,session里的變數就重新計算了。

application里的變數一直在累加,除非你重啟tomcat,否則它會一直變大。

而作用域規定的是變數的有效期限。

如果把變數放到pageContext里,就說明它的作用域是page,它的有效范圍只在當前jsp頁面里。

從把變數放到pageContext開始,到jsp頁面結束,你都可以使用這個變數。

如果把變數放到request里,就說明它的作用域是request,它的有效范圍是當前請求周期。

所謂請求周期,就是指從http請求發起,到伺服器處理結束,返回響應的整個過程。在這個過程中可能使用forward的方式跳轉了多個jsp頁面,在這些頁面里你都可以使用這個變數。

如果把變數放到session里,就說明它的作用域是session,它的有效范圍是當前會話。

所謂當前會話,就是指從用戶打開瀏覽器開始,到用戶關閉瀏覽器這中間的過程。這個過程可能包含多個請求響應。也就是說,只要用戶不關瀏覽器,伺服器就有辦法知道這些請求是一個人發起的,整個過程被稱為一個會話(session),而放到會話中的變數,就可以在當前會話的所有請求里使用。

如果把變數放到application里,就說明它的作用域是application,它的有效范圍是整個應用。

整個應用是指從應用啟動,到應用結束。我們沒有說「從伺服器啟動,到伺服器關閉」,是因為一個伺服器可能部署多個應用,當然你關閉了伺服器,就會把上面所有的應用都關閉了。

application作用域里的變數,它們的存活時間是最長的,如果不進行手工刪除,它們就一直可以使用。

與上述三個不同的是,application里的變數可以被所有用戶共用。如果用戶甲的操作修改了application中的變數,用戶乙訪問時得到的是修改後的值。這在其他scope中都是不會發生的,page, request, session都是完全隔離的,無論如何修改都不會影響其他人的數據。

問題:page、request、session、application的作用范圍?

書中解答,此處只摘錄重要語句:

page:用戶請求的當前頁面;

Request:用戶請求訪問的當前組件,以及和當前web組件共享同一用戶請求的web組件。如:被請求的jsp頁面和該頁面用<include>指令包含的頁面以及<forward>標記包含的其它jsp頁面;

Session:同一個http會話中的web組件共享它;
Application:整個web應用的所用web組件共享它。

此處我舉個例子說明

一個網站MyWebSite,其包含7個jsp頁面,分別為master.jsp、top.jsp、main.jsp、foot.jsp、login.jsp、success.jsp和news.jsp。master.jsp頁面通過<include>指令包含top.jsp、main.jsp、foot.jsp三個頁面,當用戶通過login.jsp登錄成功後,進入success.jsp頁面然後通過此頁面的<forward>標簽跳轉到master.jsp頁面中。

我們在success.jsp頁面中加入如下代碼(此處用到jstl標簽)

<c:set value="aaa" var="test1" scope=」page」 />
<c:set value="aaa" var="test2" scope=」request」 />
<c:set value="aaa" var="test3" scope=」session」 />
<c:set value="aaa" var="test4" scope=」application」 />

<jsp:forward page=」master.jsp」/ >這里一一說明

1.變數 test1 只在success.jsp內有效;
2.變數 test2 在success.jsp、master.jsp、top.jsp、main.jsp、foot.jsp中有效;
3.變數 test3 在7個頁面中都有效(包括login.jsp和news.jsp);
4.變數 test4 在整個網站,當前也就是7個頁面中都有效(包括login.jsp和news.jsp)。

Test3和test4有效范圍一樣,有什麼區別呢?

其實區別蠻大的,我只說明一點,假如此時又有另一個用戶訪問master.jsp頁面,那麼test3相對於這個用戶來說就無效,而test4卻是有效的。或者當第一個登錄的用戶關閉瀏覽器後,再重新訪問master.jsp時,test3就無效,而test4卻有效。

閱讀全文

與jsp其他地方怎麼調用局部變數相關的資料

熱點內容
射手播放器字幕文件夾 瀏覽:60
如何查看cad原文件的字體 瀏覽:260
蘋果平板型號a1395 瀏覽:116
html中添加php代碼 瀏覽:712
tidb資料庫 瀏覽:763
supersu二進制更新文件 瀏覽:293
怎麼製作app圖標 瀏覽:801
信用村的數據如何實現更新 瀏覽:238
瀏覽器工具在哪 瀏覽:579
月度數據包含哪些 瀏覽:875
成都公積金app為什麼下載不了 瀏覽:621
2014微雲版本 瀏覽:903
文件保存路徑規范 瀏覽:827
vb編程如何新建excel 瀏覽:83
穿越火線文件名字 瀏覽:750
最新款快手如何無水印網站視頻 瀏覽:625
劍靈到50級後怎麼升級 瀏覽:671
文本文件內容開機以後發現沒了 瀏覽:593
ie單文件英文 瀏覽:865
如何修改數據表的數據 瀏覽:476

友情鏈接