簡體   English   中英

重新加載JSTL,EL,Scriptlet,而無需刷新頁面

[英]Reload JSTL,EL,Scriptlets without refreshing the page

我有一個帶有很多JSTL標簽的jsp頁面(日歷)。 由於JSTL,EL,我在servlet中設置了屬性,並將其放在jsp頁面中。

當我下星期按時,我打開一個xmlhttp,它將GET發送到我的servlet(Ajax)。 我所有的屬性都更新了,所以我想在我的jsp頁面中再次獲得它們。 由於性能延遲,我不想將servlet調度到我的jsp頁面。 我不想獲取servlet結果,因為它們是屬性。

我只想刷新我的JSTL和EL,這樣它們將獲得新值(無需刷新頁面)。

這是不合邏輯的思維方式嗎? 但是無論如何,我如何刷新我的JSTL,EL,腳本集,以便出現新值?

我只想刷新我的JSTL和EL,這樣它們將獲得新值(無需刷新頁面)

這是不可能的。 請注意,EL和JSTL在視圖構建時在服務器端運行,因此在生成服務器響應時將它們應用后,除非服務器使用該視圖生成新內容,否則它們將無法在頁面中進行更新 (基本上,您的JSP JSTL,EL等組件) 1

您應該研究對Servlet(或正在使用的控制器)的AJAX請求,並可能處理JSON響應以解決JSP頁面的行為。

更多信息:

1腳本小程序也屬於服務器端類別,但是我忽略了它們,因為您不應該強烈建議不要在現代Java Web開發中使用它們。 更多信息如何避免JSP文件中的Java代碼?

HttpServlets,JSP,JSTL,EL和scriptlet都是服務器端組件,即。 在服務器上執行以產生HTTP響應。 Javascript和AJAX是客戶端組件,即。 處理返回的HTTP響應。

您無法在客戶端刷新我的JSTL和EL ,因為它們根本不存在。

一種可能的(且通用的)解決方案是使您用AJAX發出的請求產生一個JSON響應,該響應用於填充/替換HTML元素,而以前您曾使用EL來設置值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM