我发现了有关此问题的其他问题,但我仍然遇到问题,当我检查getParamerterValues
时,它总是返回null
,我认为我无法将其重定向到我的控制器.Bare与我,在新的网络应用程序。
arr = [];
$(document).on("click","#idhere",function(){
$.post("servlet.html","ids="+arr+"",function(response){
});
});
或者有没有像在JSP中将javascript数组转换为数组的JSON所以我可以将它传递给我的servlet?
String arr [] = request.getParameterValues("ids");
if(arr != null){//this line doesnt return true even my array contains item}
答案 0 :(得分:1)
变化
String arr [] = request.getParameterValues("arr");
到
String arr [] = request.getParameterValues("ids");
答案 1 :(得分:1)
它总是返回null,我认为我无法将其重定向到我的控制器
我看不到任何将值传递给控制器的代码。在你的jquery函数中,你有类似$.post("servlet.html","ids="+arr+"",function(response){
无法从jsp向其他html文件发布值。如果您尝试将值传递给servlet。
尝试这样的事情,
$(document).on("click","#idhere",function(){
$.post("servletName","ids="+arr+"",function(response){
});
});
注意:servletName
是指您在web.xml
中为您尝试发布数据的servlet映射的网址。
还要确保jquery function
通过浏览器控制台正确地将数据发布到控制器。
答案 2 :(得分:0)
如下面的示例所示,post方法需要一个json对象作为数据参数。
这应该做的工作
$.post("servlet.html",{"ids": arr.join()},function(response){
});
示例:示例:请求test.php页面,但忽略返回 结果
1 $ .post(" test.php");示例:请求test.php页面并发送 一些额外的数据(同时仍然忽略了返回结果)。
1 $ .post(" test.php",{name:" John",time:" 2 pm"});示例:通过 数据到服务器的数组(同时仍然忽略返回 结果)。
1 $ .post(" test.php",{'选择[]':[" Jon"," Susan" ]});例: 使用ajax请求发送表单数据
1 $ .post(" test.php",$(" #testform")。serialize());