[英]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.