网上关于这方面的资料不多,普遍的方法为通过一个隐藏的表单传送JS的变量。哪位大佬能写个这个转换的代码~
var UD = getUrlParam('userId');
document.form.UD2.value = UD;
</style>
<body>
<form method="post" action="UserDetail.jsp" id ="passForm">
<input id = "UD2" type = "hidden" name="UD2">
</form>
var formObj = document.getElementById('passForm');
formObj.submit();
<%
request.setCharacterEncoding("utf-8");
String UD3 = request.getParameter("UD2");%>
通过网上的方法,即将UD转成UD3,无论怎么跑UD3的值都是null,求助求助~
你首先要知道同一个页面中,后台<% %>代码永远是在服务器端先执行的,后台代码执行后才把页面传到客户端浏览器。
页面传到浏览器之后才开始执行前端的js代码,这时后台<% %>代码已经不存在了。
所以前端js的变量是不可能转换成同一个页面中后台变量的。
只能通过表单或ajax传送JS的变量到另一个页面的后台<% %>代码中。
</style>
<body>
<form method="post" action="xxxxx.jsp" id ="passForm">
<input id = "UD2" type = "hidden" name="UD2">
</form>
<script type="text/javascript">
var UD = getUrlParam('userId');
var formObj = document.getElementById('passForm');
formObj.UD2.value = UD;
formObj.submit();
</script>
在xxxxx.jsp页面中获取
<%
request.setCharacterEncoding("utf-8");
String UD3 = request.getParameter("UD2");
%>
String UD3 = request.getParameter("UD3");%>