如何获取JavaScript的变量值以传递给JSP中的Java字符串

how to get the variable value of javascript to be pass to the string of java in jsp

本文关键字:JSP 中的 字符串 Java 变量值 何获取 获取 JavaScript      更新时间:2023-09-26

我想从javascript中获取name的值并传递给java的字符串变量,然后打印它。我该怎么做,我在下面尝试了这段代码,但我有一个错误

Syntax error, insert ";" to complete LocalVariableDeclarationStatement

125:
126:字符串 mname = " %>var name = mmName;<%;127:

<script type="text/javascript">
        function EditMerchantModal(mmName){
            var name = mmName;
            <%String mname = "" %>name;<%;
            System.out.println("the name of name is: "+mname);
            %>
        } 
    </script>

当我尝试这个<%String mname = %>name;<%;<%String mname = ""+%>name;<%;分号和加号给出了错误。

你不能简单地将 javascript 变量中的值带到你的 jsp,因为你的 javascript 值是客户端的,你的 scriptlet 在服务器端运行。

因此,如果你想在JSP中使用javascript变量,那么你需要提交它们。

有关更多详细信息,请参阅此问题

来回答你的问题,这行

<%String mname = %>

给你一个错误,因为它需要一个完整的语句,所以它会提示你输入一个分号。但是,如果您只是放置一个分号,那么由于您的赋值运算符,它希望您为该变量提供一个值。

当你做这样的事情时

String mname = ""+

然后,由于您的 +(字符串串联)运算符,它需要执行串联所需的第二个值。

我建议您更改方法,因为<% .. %>标签中的代码在服务器上运行,而<script> .. <script>中的代码在文件位于客户端计算机上时正在运行。因此,它根本不适用于您当前的方法。

console.log('the name is : '+name);

只需使用它来检查您是否收到值而不是脚本。请注意,该值现在将打印在浏览器控制台上。在页面上按 F12 打开控制台并检查值。