jfinal ajax 上传文件


前端代码

<script>

//------------------上传封面图   start	
    	function checktext(){
    			var f=document.getElementById("lefile").value;//获取input type="file"的值
    	        if(f=="")
    	        { alert("请上传图片");return false;}
    	        else if(!/\.(jpg)$/.test(f))
    	        {
    	          alert("图片类型必须是jpg格式")
    	          return false;
    	        }
    	        else{
    	        	return true;
    	        }
    		}
    	function uploadtext(file){
    		if(!checktext()){return;}
    		else {
    			var prevDiv = document.getElementById('preview');
    			 var docObj=document.getElementById("lefile"); 
    			 var fileObj = docObj.files[0]; // 获取文件对象
    		     var FileController ="${BASE_PATH}/portal/works/picUpload";// 接收上传文件的后台地址 
    		     var form = new FormData();//form 对象
    		     form.append("pic_title",fileObj);// 文件对象
    		    $.ajax({
    				  type: "POST",
    				  url: FileController,
    				  data:form,
    				  processData: false,
    			      contentType: false,
    				  success: function(data){
    					 var pathValue=data.path;
    					 var message=data.message;
    					$("#picture").val(pathValue);//图片在数据库的存储路径
    					$("#preview").attr("src",pathValue); //设置图片回显
    					alert(message);
    				  }
    				});		
    		}	
    	}
    	//------------------上传封面图   end	
</script>


 <div class="col-sm-3">
                  <input id="lefile" type="file" style="opacity:0;" οnchange="uploadtext(this)" >
				  <div class="input-append">
  					<div id="localImag">
                      	<a class="btn"  οnclick="$('input[id=lefile]').click();"><img  id="preview" style="width:178px;height:178px"  src="${BASE_PATH}/static/image/uploads-files-pic11111.png"></a>
                      	<input type="hidden"  id="picture" value="" name="picture">
                    </div>
			      </div>
				  
                    <h4>封面</h4>
                    <p>(jpg图片格式:240*240px)</p>
                </div>


后台代码
	public void picUpload(){
		String path="upload/kindeditor/".trim();
		String base=this.getRequest().getContextPath().trim();//应用路径
		UploadFile picFile=getFile("pic_title");//得到 文件对象
		String fileName=picFile.getFileName();
		String mimeType=picFile.getContentType();//得到 上传文件的MIME类型:audio/mpeg
		
		if(!"image/gif".equals(mimeType) && !"image/jpeg".equals(mimeType) 
				&&!"image/x-png".equals(mimeType) &&!"image/png".equals(mimeType)){
			setAttr("message","上传文件类型错误!!!");
			renderJson();
			return ;
		}
		String realpath = getSession().getServletContext().getRealPath(path);
		String lastName = fileName.substring(fileName.lastIndexOf(".")); // 获取文件的后缀
		String newName=UUID.randomUUID().toString()+lastName;
		
		String filepath=base+"/"+path+newName.trim();
		picFile.getFile().renameTo(new File(realpath+"/"+newName));
		
		/*Response res=BaseUpload.upload(picFile.getFile().getPath(), fileName, QiniuConfig.BUCKET_NAME);
		System.err.println(QiniuConfig.WEBSITE+"\\"+fileName);
		setAttr("path",QiniuConfig.WEBSITE+"\\"+fileName);*/
		setAttr("path",filepath);
		setAttr("message","上传成功!");
		renderJson();
		return;
	}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值