1. 程式人生 > >如何將JSP中的java程式碼中的值,傳入JS程式碼中去

如何將JSP中的java程式碼中的值,傳入JS程式碼中去

經過大半天的研究摸索,終於弄明白怎麼把JSP中的java程式碼中的值,傳入JS程式碼中去。

由於自己才剛剛開始接觸javaWEB 開發,今天在那兒做使用者登入功能,使用者在未登入時顯示“登入”連結,登入後在原來“登入”的地方,改變為使用者的暱稱!由於自己一點經驗也沒有,以為就一個session就夠了,在java程式碼中獲取使用者名稱,而直接在JS程式碼中將他顯示出來,其實這樣是做不到的。這是我經過了大半天的研究發現的。

必須要用個隱藏的表單,才能夠將他傳進去

例:

<%
  String username=null;//申明一個使用者名稱變數
 if(session.getAttribute("loginUser")!=null){//如果session中有值
  BBSUsers user=(BBSUsers)session.getAttribute("loginUser");//將session的值獲取,這兒我是在賦值時賦的使用者物件
  username=user.getUname();//取出使用者的暱稱
  }
 %>
<input type="hidden" id="username" value="<%=username %>"/>//關鍵地方:建個隱藏表單,將java程式碼中需要取出的值獲取到
<script type="text/javascript" language="javascript">
       function showUser(){
            var user=document.getElementById("username").value;//通過那個隱藏表單就獲取到了需要的值,成功傳入JS程式碼中
            if(user!=null){
             var o=document.getElementById("login");
             o.innerHTML="歡迎你,"+user+"!";
            }          
       }
</script>
<body  onload="showUser()">//窗體載入時呼叫