在 JSP 中将 JavaScript 变量赋给 Java 变量

2022-09-02 10:15:35

埃洛那里,

我正在尝试将javascript变量的值分配给java变量。但是我不知道该怎么做?例如,假设我有这个:

<html>
<head>
   <script type="text/javascript">
       function return variable(){
          var a = "hello";
          return a;
       }
   </script>
</head>
<body>

<%
   //The java code
   String b = //how do I get that javascript variable here?
%>

</body>
</html>

答案 1

Java脚本在浏览器上播放,其中java代码是服务器端的东西,所以你不能简单地这样做。

您可以做的是通过表单提交,使用URL参数或使用AJAX调用将计算变量从javascript提交到服务器,然后可以使其在服务器上可用

断续器

<input type="hidden" id="hiddenField"/>

确保此字段位于<form>

Javascript

document.getElementById("hiddenField").value=yourCalculatedVariable;

在服务器上,您将获得此作为一部分request


答案 2

您需要阅读有关 JSP 生命周期的信息。试试这个:http://en.wikipedia.org/wiki/File:JSPLife.png

JavaScript在客户端上运行,但是为了更改jsp,您需要访问服务器。这可以通过Ajax(http://en.wikipedia.org/wiki/Ajax_%28programming%29)来完成。

以下是一些与Ajax相关的链接:http://www.openjs.com/articles/ajax_xmlhttp_using_post.php

http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first