Ajax
当我们每请求一次数据的时候,令我们头痛的是页面无法完成局部请求,每次都要刷新该页面才能获取该数据.为了解决这个问题,我们可以用到ajax,ajax是一个可以实现异步请求,局部刷新的技术,当然前面说的是Ajax1.0.
Ajax1.0. 缺点:
不可以发送带文件的数据,以前的解决文件上传用了ifram上传网页来解决
Ajax2.0
ajax2.0新增了一个属性,FromData方法,该方法可以自动获取from表单内带有name属性的值,把值保存在一个对象里.并且可以传送文件.在使用该对象的时候需要实例 .new FormData(获取元素);如图
如果想上传没有带name属性的数据,则需要向实例对象中添加要传递的参数,添加方法append("name",vlaue);如图
原生js 使用FromData() 需要注意: FromData()里面已经默认设置了请求头,所以说是不能通过"get"传递数据的,用"post"传递参数是不需要设置请求头,直接xhr.send(fm);就等于发送数据了,在后端接收的数据参数名是你所对应的name属性的值
使用jquery需要注意: 在发送数据的时候要添加两个属性才能生效,contentType: false,//禁用请求头,因为fordate对象会自动设置请求头,processData: false, //让jquery不要转换对象,如果转换fm就是相当于"fm"字符串,如图