如何在JSP页面中将JavaScript中的值赋值给Java变量?有可能这样做吗?
以下是javascript函数:
function loadGroupMembers(beanArrayVal){
document.getElementById("beanVal").value=beanArrayVal;
------------I have mentioned my requirement below --------------
%%%%%%%%%%%%%%%
int beanArrVal =beanArrayVal ;
%%%%%%%%%%%%%%
( or )
%%%%%%%%%%
c:set var="beanvalue" value="${beanArrayVal}"
%%%%%%%%%%%%%
}
即使我在上述相同功能中使用id beanArrayVal
也在隐藏输入字段中分配了beanVal
值。即使可以将此隐藏字段中的值赋给JSTL变量,也足够了。
答案 0 :(得分:2)
JS在客户端计算机上运行。 Java在服务器机器上运行。这些之间唯一的通信工具是HTTP。 Java / JSP可以生成/生成HTML页面并将其作为HTTP响应从服务器发送到客户端,因此它可以通过简单地在JSP模板中按原样生成它们来轻松地(预先)设置Javascript变量。但反过来真的需要从客户端到服务器的HTTP请求。您可以通过单击链接或提交表单来同步调用HTTP请求,无论是手动还是在link.click()
或form.submit()
之类的Javascript帮助下。您还可以在Ajaxical权限的帮助下异步调用HTTP请求。
长话短说:让JS将其设置为(隐藏)输入值/请求参数,并通过提交带有(隐藏)输入值的表单或通过调用带有请求参数的链接将其发送到服务器端,或者通过使用查询字符串触发ajax请求。
要了解有关Java / JSP和Javascript之间隔离墙的更多信息,您可能会发现本文也很有用:Java/JSP/JSF and JavaScript。
希望这可以清除很多东西并为你开启一个新的世界。