为什么Controller实体类接收不到$.ajax提交的数据?

问题描述

条件查询并且分页显示,pageIndex页码可以接收到,但是用实体类(Appinfo)接收条件并没有接收到,很不解,求帮助!

相关代码

前端ajax代码:
function pageHandler(pageIndex) {

    console.log(">>>>>>>>> pageIndex:"+pageIndex)
    var data = $("form").serialize()
    console.log(data)
    $.ajax({
        url:"./paging2",
        type:"post",
        data:{
                pageIndex:pageIndex,
                appInfo:$("form").serialize()
             },
        success : function (result) {
            console.log(result)
            console.log(pageIndex)
            pageIndex = result.pageIndex;
            build_app_tab(result)
            build_page_prompt(result)
        }
    })
}

Controller代码:
@RequestMapping("paging2")

@ResponseBody
public Page<AppInfo> paging2(@RequestParam(value = "pageIndex",defaultValue = "1") Integer pageIndex, AppInfo appInfo){
    return appService.getAppInfoByService(appInfo,pageIndex);
}

调试截图:

2019-11-06 101509.png2019-11-06 101226.png

阅读 3.3k
2 个回答

不是接收不到提交的数据,是不能这么智能地给你序列化到这个实体上。你用String 接收试试。

注释:只会将”成功的控件“序列化为字符串。如果不使用按钮来提交表单,则不对提交按钮的值序列化。如果要表单元素的值包含到序列字符串中,元素必须使用 name 属性。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题