ajax-springMVC提交表单的方式
2024-10-06 19:31:19
1.request参数提交(Form提交),适用于GET/POST
request参数传递都会转换成 id=123&fileName=test.name&type=culture_art这种形式,get请求会显示在url上,post不在url上显示
ajax写法:
$.ajax({
url : /admin/test,
type : "post",
async : true,//默认为true
contentType: application/x-www-form-urlencoded, //默认值为表单提交
data : {"id" : id,"fileName" : fileName,"type" : modelType},//请求参数
success : function(data) {
//请求成功处理
},
error : function(data) {
//请求失败处理
}
});
controller
第1,2种写法controller形参和ajax data中的key必须保持一致
第3种写法形参可以不一致,@requestParam中的vaue必须和data中的key一致才能自动参数绑定)
第1种写法
@PostMapping("/admin/test")
public ResultBean<String> updateModelNameAndType(
String id,
String fileName,
String type) {
return null;
}
第2种写法
@PostMapping("/admin/test")
public ResultBean<String> updateModelNameAndType(
@RequestParam String id,
@RequestParam String fileName,
@RequestParam String type) {
return null;
}
第3种写法
@PostMapping("/admin/test")
public ResultBean<String> updateModelNameAndType(
@RequestParam(value="id") String tmpId,
@RequestParam(value="fileName") String tmpFileName,
@RequestParam(value="type") String tmpType) {
return null;
}
第4种写法(封装成bean,bean的属性名称和ajax data中的key一致即可自动绑定到对象)
@PostMapping("/admin/test")
public ResultBean<String> updateModelNameAndType(ModelInfo modelInfo) {
return null;
}
2.request body提交,适用于POST提交
注意将ajax中data的值json对象转成json字符串
ajax
$.ajax({
url : "/admin/test",
type : "post",
contentType : "application/json;charset=UTF-8",
data : JSON.stringify({id:"id",fileName:"test.txt"}),//或者直接获取form表单 data : $('#form').serialize()
success : function(data) { },
error : function(data) { }
});
controller
@PostMapping("/admin/test")
public ResultBean<String> insertNewVersion(@RequestBody VersionEntity versionInfo) {
return service.getVersionSvc().insertVersion(versionInfo);
}
最新文章
- fir.im Weekly - 聊聊 Google 开发者大会
- Leetcode 57: Insert Interval 让代码更好读, 更容易测试.
- C++快速入门系列教程
- CCNA网络工程师学习进程(4)网络设备的基本配置和详细介绍
- java多线程与单例模式(Singleton)不得不说的故事
- JavaEE 获取路径全攻略
- asp.net 后台实现删除,划掉效果
- [moka同学笔记]yii2.0查询数据库
- JNI,NDK
- wpf 面试题目
- POJ2284 That Nice Euler Circuit (欧拉公式)(计算几何 线段相交问题)
- Linux的文件属性
- In-Cell、On-Cell和OGS全贴合屏幕技术区别
- JVM调优总结 + jstat 分析(转)
- kibana 统计每天注册数
- 【原创】重绘winform的GroupBox
- less学习:基础语法总结
- Python Django 2.2登录功能_2
- P5300 [GXOI/GZOI2019]与或和
- Python——开发一个自动化微信投票器【附代码实例方法】