使用jQuery的ajax提交图片信息

news/2024/11/29 4:01:36/
1 设置图片id(html)

首先,定义上传图片的id,根据上传文件的id获取图片信息:

 注:图片的id应该设置在input标签里面

 2 发送ajax请求(js)
var formData = new FormData();
formData.append("file", jQuery("#photo_input")[0].files[0]);
if(formData!=null){jQuery.ajax({url:"/user/photo",type:"POST",data:formData,contentType: false,processData: false,success:function(res){if(res.code==200&&res.data!=null){jQuery("#photo").attr("src",res.data);}else{alert("修改失败!"+res.data);}}});
}

参数说明:

  • type:获取文件,必须使用"POST";
  • processData:默认情况下为true,通过data选项传递进来的数据,如果是一个对象,都会出来转化成一个查询字符串,如果要发送不希望转换的信息,要设置为false;
  • contentType:默认值:“application/x-www-form-urlencoded”。发送信息至服务器时内容编码类型。默认值适合大多数情况。如果你明确地传递了一个 content-type 给 jQuery.ajax() 那么它必定会发送给服务器。
3 后端处理
  public AjaxResult photo(MultipartFile file, HttpServletRequest request){//从参数中获取用户Userinfo userinfo=SessionUtil.getUser(request);if(userinfo==null||userinfo.getUid()<=0){return AjaxResult.fail(-1,"请先登录");}//获取原来的文件名和后缀String originalFilename=file.getOriginalFilename();String ext = "."+ originalFilename.split("\\.")[1];//生成一个新的文件名(以防有重复的名字存在导致被覆盖)String uuid = UUID.randomUUID().toString().replace("-", "");String newName = uuid + ext;String path =imagepath+newName;//保存路径newName;try {file.transferTo(new File(path));} catch (IOException e) {e.printStackTrace();}String urlpath = "/image/"+newName;//将文件名更新到数据库中int result=userService.updatephoto(urlpath,userinfo.getUid());//将处理结果返回给前端return AjaxResult.succ(urlpath);}


http://www.ppmy.cn/news/869221.html

相关文章

2018 ChinaJoy 跟着万代南梦宫的IP一起“畅玩一夏”

上海2018年7月19日电 /美通社/ -- 以“新科技&#xff0c;新娱乐&#xff0c;新价值”为主题的2018年第十六届 ChinaJoy 将于8月3日~8月6日在上海新国际博览中心隆重举行。作为知名娱乐企业及历年的重要参展者&#xff0c;万代南梦宫一如既往地带着众多优质 IP 作品入驻 N3 馆&…

ChinaJoy 第二天,是谁独得万千宠爱?

流&#xff08;xian&#xff09;量&#xff08;mu&#xff09;警&#xff08;ji&#xff09;告&#xff08;du&#xff09; 转眼间又到周末 一年一度的游戏界盛事ChinaJoy 都进行到第二天了 看到现场传来的视频和图片 正在疯狂打字的云宝已丢掉电脑 飞到上海新国际博览中心的 B…

大厂玩家齐点赞!ChinaJoy电竞猛兽齐聚京东展台

作为各大游戏厂家及硬件厂商竞相参加的大型展会&#xff0c;ChinaJoy一开幕便备受行业及游戏玩家的关注&#xff0c;盛况空前。8月2日&#xff0c;英特尔、联想、惠普、戴尔、雷神、机械革命、外星人等PC大牌高层纷纷齐聚京东展台&#xff0c;携手推出了重磅新品。一时之间&…

ChinaJoy GO!一大波游戏挑战,等你来战!

友盟全域数据 想听干货案例&#xff1f;想见行业大咖&#xff1f;想要各种扶持资源&#xff1f;想拿各种周边礼品&#xff1f;还想CJ嗨起来&#xff01;加入精品游戏挑战&#xff0c;一站满足你所有想要的。ChinaJoy不仅有ShowGirl&#xff0c;更有刺激好玩的“真人秀”&#x…

8 月 3 日 ChinaJoy, Google 展台,让你玩到停不下来

活动信息 日期 2018年8月3日到8月5日 上午9点至下午5点 地点 上海新国际博览中心 W4馆 M205展位 活动概要 一年一度的 ChinaJoy 又来了&#xff0c;今年的 Google 展台将给你带来别样的惊喜。整个展台将以游乐场的形式呈现&#xff0c;让你步入游戏的世界来体验产品&#xff0c…

与快乐和成功同行,Google 与您相约 ChinaJoy 2019

在游戏之路上&#xff0c;最幸福的事情莫过于有同样喜爱游戏的伙伴在身边——无论您是在寻找心仪的游戏&#xff0c;还是已经在游戏的世界里展开冒险&#xff0c;亦或是正在亲手创造自己的游戏世界。 我们一直在努力&#xff0c;让您在游戏之路上与快乐和成功同行。我们在 Chin…

ChinaJoy盛会值得期待

最近很长时间没有上来了&#xff0c;正准备下一步的技术路线规划。 近日看了看2008 ChinaJoy的最新动态&#xff0c;确实有很多亮点&#xff1a; 1、移动平台game将成为今年的热点&#xff1b; 2、更多的国际游戏巨鳄加入&#xff0c;如epic game&#xff1b; 3、休闲平台游…