在我的春季项目中,我通过Ajax调用发送请求,如下所示:
function doAjaxPost(currentPage) {
var appName = document.searchForm.txtZipFile.value;
var e = document.getElementById("selectStatus");
var appStatus = e.options[e.selectedIndex].text;
$.ajax({
type : "GET",
url : "http://localhost:8080/ preListOnSearch.do",
data : "currentPage=" + currentPage + "&appName=" + appName + "&appStatus="
+ appStatus,
cache: false,
success : function(response) {
alert(response);
},
error : function(e) {
alert('Error: ' + e);
}
});
}
在我的控制器中,我编写了如下方法:
@RequestMapping(value = "/preListOnSearch", method=RequestMethod.GET)
public String preTestDataolx(@PathVariable("siteId") String siteId, @PathVariable(value = "currentPage") String currentPage,
@RequestParam(value = "appStatus") String appStatus) {
System.out.println(appStatus);
return "/preTestData";
}
但这给我错误。当我从方法定义中删除RequestParams时,它工作正常。所以我只想知道如何访问控制器中的ajax调用参数。
最佳答案
尝试将数据设置为JS对象:
$.ajax({
type : "GET",
url : "http://localhost:8080/ preListOnSearch.do",
data : {currentPage: currentPage, appName: appName, appStatus: appStatus},
cache: false,