是否可以将JavaScript变量传递给Scriptlet中的Java代码

我在函数中有一个Scriptlet,它从Session获取数据并检查Map中的值

我可以将用户选择的选项(一个javascript变量)传递给Map吗?

function checker() { var selObj = document.getElementById('selSeaShells'); var optionselectedvalue = selObj.options[selObj.selectedIndex].value.split(':')[0]; if(optionselectedvalue==''||optionselectedvalue==null) { alert('Select a Book'); return false; } if (!text_form.quan.value) { alert('Enter Quantity'); return false; } var selectedbook = optionselectedvalue; var selectedquantity = text_form.quan.value;  return true; } 

javascript在客户端播放, JSP在服务器端播放。

你需要的是你必须提出服务器请求。 并向该字符串发送查询参数。

您可能会误解jspjavascript存在于同一文档中。 是的,但JSP部分在服务器端本身编译,JSP输出发送到客户端。

所以解决方案是:要么提交html表单提交要么转到Ajax请求。

java处理在服务器端完成,javacript在客户端执行。 如果你在html页面上查看源代码,你将找不到任何map。所以你不能将javascript值传递给java代码(因为java代码已经被服务器处理了,而且它已经没有了)。

如果您真的想将javascript值传递给服务器端,您可以获取ajax或表单提交的帮助,如Baadshah指出的那样