2014-11-04 98 views
0

我在使用ajax和Java servlet时遇到了一些问题。Ajax POST数据数组始终为空

$.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 

但是,当我尝试打印参数瓦尔总是空。

我哪里错了?

回答

0

那么这是一个有点怪异这是必要的,但如果我创建的对象,这样的

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

帕拉姆乏了不为空,我可以在.js文件使用它作为JSON

0

( 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; 
} 

你可以试试这个