我想在JSP会话中存储一个JavaScript变量值,以便在我的Java类方法中进一步使用它。请提供在JSP会话中存储任何JavaScript变量的解决方案。
答案 0 :(得分:1)
使用ajax将该变量传递给Servlet,或者在表单获取提交时将其设置在某个隐藏字段中,它也会被POST。
答案 1 :(得分:0)
从JSP到另一个执行该操作的JSP进行AJAX调用。 jsp将变量名称及其值作为请求参数,并将变量放入会话中。
您不能仅使用客户端(javascript)代码执行此操作!
答案 2 :(得分:0)
您最好的选择是将价值存储在Cookie中。客户端javascript和服务器端jsp都可以访问cookie。
答案 3 :(得分:0)
程序应该有一个自然流程,因此您不必为了存储变量而专门存储变量的机制。我的意思是,如果你要存储一个userName,它应该是在登录时,或者如果你正在获取contactInfo,那么你应该有一个专门用于此目的的servlet。无论如何,这是对你的问题的三部分答案。这是非常笼统的,非特定的,但是一旦充实就会完成你想要的东西:
这是web.xml文件:
<servlet>
<servlet-name>StoreVariableServlet</servlet-name>
<servlet-class>tests.servlets.StoreVariableServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>StoreVariableServlet</servlet-name>
<url-pattern>/storeVariableServlet</url-pattern>
</servlet-mapping>
这是jQuery代码:
$.ajax({
type: "POST",
url: "/storeVariableServlet",
data: ({
variable : $(variableName).val()
}),
success: function(){
alert("Success");
}
});
这是Servlet代码:
String variableToBeStored = request.getParameter("variable");
HttpSession session = request.getSession();
session.setAttribute("variableXYZ", variableToBeStored);