ajax提交数据以及封装form表单数据提交

首先什么是ajax?

**ajax就是局部刷新技术,也就是在不跳转网页的情况下通过某个事件触发,从后台拿到数据。
  最大的好处就是提高了用户的体验和交互性,当前公司也没有人会用什么表单提交。**

ajax怎么从后台拿到数据?

以ssm框架为例!

在这里插入图片描述
在使用@RequestMapping后,返回值通常解析为跳转路径。加上@responsebody后,返回结果直接写入HTTP response body中,不会被解析为跳转路径。那么返回的就是你方法标注的类型。这里有个重点
在这里插入图片描述
因为该jar包的缘故所有返回的数据不管什么类型,都被打包成json数据输出。就比如返回的一个List
json格式就是 [{name:“美女”,sex:“男”},{name:“帅哥”,sex:“女”}]
前台ajax代码
在这里插入图片描述
首先ajax可以用js代码写也可以用jq写,但是jq封装的ajax更加简单明了,我们用jq的ajax,首先引入jq的js才可以。
我们这里写的是当某个元素被点击时触发,这个ajax请求。
url是请求地址
data是可以向后台传数据
type请求方式
success请求成功然后接受返回的数据data

ajax怎么给后台传数据?

第一种 地址传参get请求:http://119.29.151.49:8080/model?cod=123456
我们后台可以通过request .getParameter(“cod”)去拿,ssm的话可以在方法传入参数直接拿,比如
@RequestMapping(“ceshi”)
@ResponseBody
public User ceshi(String cod){
}
第二种 ajax data属性
在这里插入图片描述
格式和json一样 后台可以拿到 AlbumName Entered的值,拿值的方式和刚才一样。那么当type我们设置为get那么和地址传参一模一样,不仅会有乱码的问题,而且参数会暴露到地址,不安全。当我们type改为post那么都乱码问题可以简单解决,同时数据也不会再地址显示。建议都用post

第三 怎么代替表单提交呢?

我们可以通过表单的id把他里面的数据打包成json传到后台,这样就可以舍弃表单提交
在这里插入图片描述

首先我们form表单给它个id,然后ajax中 加入 data: $(’#frm’).serialize(),
该属性,其中frm是表单的id,我们后台就可以拿到整个表单的值,方式和平常表单提交拿值方式一样。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值