1. 程式人生 > >JSP中在JS函式中巢狀Java程式碼的執行問題

JSP中在JS函式中巢狀Java程式碼的執行問題

function exitSystem() {       var ok = confirm("您確定要退出該系統嗎?");       if(ok){            <%session.removeAttribute("user");%>         }      window.close(); } 問題:包含這個js的頁面,函式沒執行,但是session中的user被清除了。 分析: <%session.removeAttribute("user");%> 是在服務端執行的,而js是在瀏覽器端執行的。流程:訪問伺服器-》服務端執行Java程式碼,生成靜態內容-》返回給客戶端瀏覽器-》瀏覽器展示並執行js程式碼,也就是session清除user屬性的操作在服務端已經執行了,這才會導致明明登入了,session中卻沒有user的問題。 解決: function exitSystem() {       var ok = confirm("您確定要退出該系統嗎?");       if(ok){           location.href="${pageContext.request.contextPath}/removeUser";        }      window.close(); } //在removeUser函式中清除session中user屬性