1。js變量獲取jsp頁面中java代碼的變量值。
方法:var JS變量名 = <%=JAVA變量名 %>
2。java代碼獲取js變量的值。
說明:在JSP中;Java部分是在服務器端執行的;js部分是在客戶端的瀏覽器執行的;二者完全不相干。因此直接在JSP頁面上是無法在js、java和HTML變量之間進行調用的。
變通(解決方案):將js變量放到form中的一個;在后台從form中取出變量放到隱藏域中;然后提交表單給要調用變量的頁面。這個頁面可以就是本身。示例如下:
bb.jsp頁面:
<% String test5 = (String)request.getAttribute("test4"); %>
<script type="text/javascript">
var test1 = '111'; //定義js變量
document.form.test2.value = test1;
//將js變量的值放到form中的一個隱藏域中
var formObj = document.getElementById('passForm');
formObj.submit();
</script>
<form method="post" action="aa.jsp" id ="passForm">
<input id = 'test2' type = 'hidden' name="test2">
</form>
aa.jsp頁面中的Java代碼:
<%
request.setCharacterEncoding("utf-8");
String txtMsg = request.getParameter("test2");
out.println(txtMsg);
%>
注:如果同一個頁面自己給自己傳值,aa.jsp和bb.jsp可以為同一頁面。
傳遞的java變量一般應該是表示數字或者字符串的變量,復制給js變量一定要用引號括起來,如果java變量值含有引號,不好意思了你還得做轉義。
