我在函数中有一个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;
<%
Map cart = (Map) session.getAttribute("cart");
if(cart.containsKey(selectedbook))
{
String quant = (String) cart.get(str);
}
%>
return true;
}
答案 0 :(得分:6)
javascript 在客户端播放, JSP 在服务器端播放。
您需要做出服务器请求。并将该字符串发送一个查询参数。
您可能会误解同一文档中存在jsp
和javascript
。是的,但JSP部分在服务器端本身编译,JSP输出发送到客户端。
因此,解决方案是:转到html
表单提交或转到Ajax
请求。
答案 1 :(得分:0)
java处理在服务器端完成,javacript在客户端执行。如果你在html页面上查看源代码,你将找不到任何map。因此你无法将javascript值传递给java代码(因为java代码已经被服务器处理了,而且它已经没有了。)
如果您真的想将javascript值传递给服务器端,您可以获取ajax或表单提交的帮助,如Baadshah指出的那样