$ .post()一个到Servlet的javascript数组

6 java ajax jquery

我正在使用JQuery post(),但我的servlet没有看到我作为参数传递的数组.

我的javascript看起来像这样:

var myArray = ['1', '2'];
$.post('action.do', {"arrayData":myArray, "mode":"insert"});
Run Code Online (Sandbox Code Playgroud)

在我的servlet中:

System.out.println(request.getParameterMap());
Run Code Online (Sandbox Code Playgroud)

哪个输出:

{模式=插入}

我也试过了

$.post('action.do', {"arrayData[]":myArray, "mode":"insert"});
Run Code Online (Sandbox Code Playgroud)

$.post('action.do', {"arrayData":$(myArray).serializeArray(), "mode":"insert"});
Run Code Online (Sandbox Code Playgroud)

Ole*_*nko 6

我有这个问题.我只是通过在"arrayData"参数服务器端添加括号来解决它.在客户端:

$.post('action.do', {arrayData:myArray, mode:"insert"});
Run Code Online (Sandbox Code Playgroud)

请注意,客户端arrayData参数没有括号.

在服务器上:

String[] arrayData=request.getParameterValues("arrayData[]");
Run Code Online (Sandbox Code Playgroud)

这对我有用!