文件上传

ajaxfileupload.js

js代码如下:

function uploadPic(){
	 var arr = new Array();
     var fileName=$("#infoPicture").val();
     if(fileName!=null && fileName!=''){
         arr = fileName.split(".");
         if(arr[1]=='jpg'||arr[1]=='gif'){
        	 $.ajaxFileUpload({
        	        url: '${base}/info/ajaxUpLoadImg.json', //用于文件上传的服务器端请求地址
        	        type: 'post',
        	        secureuri: false, //一般设置为false
        	        fileElementId: "infoPicture", //文件上传空间的id属性 <span style="font-family: Arial, Helvetica, sans-serif;"><input type="file" name="infoPicture" id="infoPicture"/></span>
        	        dataType: 'json', //返回值类型 一般设置为json
        	        success: function (data, status)  //服务器成功响应处理函数
        	        {
        	            $("#ImgPr").attr("src", data.imgurl);
        	            $("#infoPic").val(data.imgurl);//把服务器返回的图片地址,放在隐藏域中,方便ajax提交表单时,图片地址的获取。
        	        },
        	        error: function (data, status, e)//服务器响应失败处理函数
        	        {
        	            alert(e);
        	        }
        	    })
        	}else{
                alert("请上传jpg||gif文件");
                return;
            }
         }else{
             alert("请选择文件");
             return; 
         }
}
html代码:

<tr>
                  <td width="25%"> 上传图片: </td>
                  <td width="50%"><input type="file" name="infoPicture" id="infoPicture"/><input type="hidden" name="infoPic" id="infoPic"/></td>
                </tr>
                <tr>
                  <td width="25%"> 图片预览: </td>
                  <td width="50%"><img id="ImgPr" width="120" height="120" /><input type="button" id="upload" value="upload" οnclick="uploadPic()"/></td>
                </tr>

服务器段代码

@RequestMapping(value="/ajaxUpLoadImg",method=RequestMethod.POST)
	@ResponseBody
    public void  ajaxUpLoadImg(@RequestParam("infoPicture")MultipartFile fileToUpload,HttpServletRequest request , HttpServletResponse response) throws Exception  {
		response.setContentType("text/html;charset=UTF-8");
		String originalFilename = fileToUpload.getOriginalFilename();
		if (StringUtils.isNotEmpty(originalFilename)) {
			String arr[] = originalFilename.split("\\.");
			String fileName = this.getRandomFileName()+"."+arr[1];
			FileUtils.copyInputStreamToFile(fileToUpload.getInputStream(), new File(bannerImgUpload,fileName));
			PrintWriter out = response.getWriter();
			String res = "{imgurl:'" + bannerImgUpload+ fileName + "'}";
			out.print(res);
			out.flush();
		}
	}
PS:如果不这样写
<span style="font-size:18px;color:#ff0000;">response.setContentType("text/html;charset=UTF-8");</span>
,返回值会是这样的<pre style="word-wrap: break-word; white-space: pre-wrap;">frfrfrg</pre>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值