Ajax POST数据数组始终为空

时间:2014-11-04 22:55:43

标签: jquery arrays servlets parameter-passing

我在使用ajax和Java servlet方面遇到了一些问题。

$.ajax({
    url: 'sampleURL',
    type: 'POST',
    data:data,
    success: function(response){ },
    error: function(){}
});

我的数据对象是这样的

{name:'name',vars:[array]}

我的vars数组存在,并且不为空。

当我尝试在servlet中执行此操作时

System.out.println(request.getParameter("name")); //it does print name

但是当我尝试打印参数变量时,它总是为空。

我哪里出错了?

2 个答案:

答案 0 :(得分:0)

嗯,如果需要这个就有点奇怪,但如果我创造了这样的对象

{name:'name',JSON.stringify(vars:[array])}

Param vars不再为null,我可以将它用作JSON

答案 1 :(得分:0)

<。>在.js(java脚本)

var variable="test";
$.ajax({
    url: baseUrl + "nameController/test1",
    async: false,
    data: {val: variable},
    dataType: 'html',
    success: function (dat) {
        console.log(dat);
    }
});

你创建了nameController.java

@RequestMapping(value = "test1", method = RequestMethod.POST)
public @ResponseBody
String checkRoomStatusReservation(@RequestParam(value = "val", required = true) String parse) {
    System.out.println("parse"+parse);
    //value from parse=test
return parse;
}

你可以试试这个